#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PlayerBasicInfo {
    #[prost(string, tag = "1")]
    pub nickname: ::prost::alloc::string::String,
    #[prost(uint32, tag = "2")]
    pub level: u32,
    #[prost(uint32, tag = "3")]
    pub exp: u32,
    #[prost(uint32, tag = "4")]
    pub stamina: u32,
    #[prost(uint32, tag = "5")]
    pub mcoin: u32,
    #[prost(uint32, tag = "6")]
    pub hcoin: u32,
    #[prost(uint32, tag = "7")]
    pub scoin: u32,
    #[prost(uint32, tag = "8")]
    pub world_level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AmountInfo {
    #[prost(uint32, tag = "1")]
    pub cur_amount: u32,
    #[prost(uint32, tag = "2")]
    pub max_amount: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BlackInfo {
    #[prost(int64, tag = "1")]
    pub begin_time: i64,
    #[prost(int64, tag = "2")]
    pub end_time: i64,
    #[prost(uint32, tag = "3")]
    pub limit_level: u32,
    #[prost(uint32, tag = "4")]
    pub ban_type: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fgojknkcpip {
    #[prost(enumeration = "AvatarType", tag = "1")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "2")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VersionCount {
    #[prost(uint32, tag = "1")]
    pub version: u32,
    #[prost(uint32, tag = "2")]
    pub count: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ClientDownloadData {
    #[prost(uint32, tag = "1")]
    pub version: u32,
    #[prost(int64, tag = "2")]
    pub time: i64,
    #[prost(bytes = "vec", tag = "3")]
    pub data: ::prost::alloc::vec::Vec<u8>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fjecopmfeje {
    #[prost(bytes = "vec", tag = "1")]
    pub fimiickbioa: ::prost::alloc::vec::Vec<u8>,
    #[prost(message, optional, tag = "2")]
    pub fbidffglaig: ::core::option::Option<ClientDownloadData>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ClientUploadData {
    #[prost(string, tag = "1")]
    pub tag: ::prost::alloc::string::String,
    #[prost(string, tag = "2")]
    pub value: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FeatureSwitchParam {
    #[prost(uint32, repeated, tag = "1")]
    pub param_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FeatureSwitchInfo {
    #[prost(enumeration = "FeatureSwitchType", tag = "1")]
    pub r#type: i32,
    #[prost(message, repeated, tag = "2")]
    pub switch_list: ::prost::alloc::vec::Vec<FeatureSwitchParam>,
    #[prost(bool, tag = "3")]
    pub is_all_closed: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Edcfbagkign {
    #[prost(string, tag = "1")]
    pub fkmdfhlmalf: ::prost::alloc::string::String,
    #[prost(string, tag = "2")]
    pub joanckcjoik: ::prost::alloc::string::String,
    #[prost(string, tag = "3")]
    pub cfglllnjbgi: ::prost::alloc::string::String,
    #[prost(string, tag = "4")]
    pub amffaadgoch: ::prost::alloc::string::String,
    #[prost(string, tag = "5")]
    pub opipigaghli: ::prost::alloc::string::String,
    #[prost(string, tag = "6")]
    pub clcddgmfled: ::prost::alloc::string::String,
    #[prost(string, tag = "7")]
    pub jkkjpiondan: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mlppfodcabi {
    #[prost(uint64, tag = "1")]
    pub ghlhiopphkg: u64,
    #[prost(enumeration = "ReplayType", tag = "2")]
    pub dahdcmnhilo: i32,
    #[prost(uint32, tag = "3")]
    pub stage_id: u32,
    #[prost(uint32, tag = "4")]
    pub uid: u32,
    #[prost(string, tag = "5")]
    pub nickname: ::prost::alloc::string::String,
    #[prost(uint32, tag = "6")]
    pub gjlfhjlijon: u32,
    #[prost(string, tag = "7")]
    pub cgddaglfakd: ::prost::alloc::string::String,
    #[prost(uint64, tag = "8")]
    pub phhhfhobhmk: u64,
    #[prost(uint32, tag = "9")]
    pub pkkejjflnoo: u32,
    #[prost(uint32, tag = "10")]
    pub gndmdolbkgn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PunkLordBattleAvatar {
    #[prost(uint32, tag = "1")]
    pub avatar_id: u32,
    #[prost(uint32, tag = "2")]
    pub avatar_level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PunkLordBattleRecord {
    #[prost(uint32, tag = "1")]
    pub uid: u32,
    #[prost(uint32, tag = "2")]
    pub damage_hp: u32,
    #[prost(bool, tag = "3")]
    pub is_final_hit: bool,
    #[prost(uint32, tag = "4")]
    pub over_kill_damage_hp: u32,
    #[prost(string, tag = "5")]
    pub battle_replay_key: ::prost::alloc::string::String,
    #[prost(message, repeated, tag = "6")]
    pub avatar_list: ::prost::alloc::vec::Vec<PunkLordBattleAvatar>,
    #[prost(uint32, tag = "7")]
    pub assist_score: u32,
    #[prost(uint32, tag = "8")]
    pub damage_score: u32,
    #[prost(uint32, tag = "9")]
    pub final_hit_score: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gakcdpilpii {
    #[prost(message, repeated, tag = "1")]
    pub ahkiakoomhh: ::prost::alloc::vec::Vec<PunkLordBattleRecord>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Phmkohmiphm {
    #[prost(uint32, tag = "1")]
    pub uid: u32,
    #[prost(uint32, tag = "2")]
    pub monster_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cldjmhdelhn {
    #[prost(uint32, tag = "1")]
    pub uid: u32,
    #[prost(uint32, tag = "2")]
    pub monster_id: u32,
    #[prost(uint32, tag = "3")]
    pub ifjocipnpgd: u32,
    #[prost(uint32, tag = "4")]
    pub world_level: u32,
    #[prost(int64, tag = "5")]
    pub phhhfhobhmk: i64,
    #[prost(uint32, tag = "6")]
    pub left_hp: u32,
    #[prost(uint32, tag = "7")]
    pub iligjlcnhae: u32,
    #[prost(enumeration = "PunkLordShareType", tag = "8")]
    pub pimiljpkoih: i32,
    #[prost(bool, tag = "9")]
    pub lhgbpnnpaem: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PunkLordBattleReplay {
    #[prost(string, tag = "1")]
    pub battle_replay_key: ::prost::alloc::string::String,
    #[prost(message, optional, tag = "2")]
    pub replay_info: ::core::option::Option<Mlppfodcabi>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RegionInfo {
    #[prost(string, tag = "1")]
    pub name: ::prost::alloc::string::String,
    #[prost(string, tag = "2")]
    pub ognhoefhhco: ::prost::alloc::string::String,
    #[prost(string, tag = "3")]
    pub dispatch_url: ::prost::alloc::string::String,
    #[prost(string, tag = "4")]
    pub env_type: ::prost::alloc::string::String,
    #[prost(string, tag = "5")]
    pub title: ::prost::alloc::string::String,
    #[prost(string, tag = "6")]
    pub msg: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dispatch {
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(string, tag = "2")]
    pub msg: ::prost::alloc::string::String,
    #[prost(string, tag = "3")]
    pub mmlncegiafk: ::prost::alloc::string::String,
    #[prost(message, repeated, tag = "4")]
    pub region_list: ::prost::alloc::vec::Vec<RegionInfo>,
    #[prost(string, tag = "5")]
    pub dalmchlfbbp: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BattleOp {
    #[prost(uint32, tag = "1")]
    pub turn_counter: u32,
    #[prost(uint32, tag = "2")]
    pub state: u32,
    #[prost(uint32, tag = "3")]
    pub action_entity_id: u32,
    #[prost(uint32, tag = "4")]
    pub target_entity_id: u32,
    #[prost(uint32, tag = "5")]
    pub op_type: u32,
    #[prost(uint32, tag = "6")]
    pub skill_index: u32,
    #[prost(uint32, tag = "7")]
    pub operation_counter: u32,
    #[prost(string, tag = "8")]
    pub panakndfhkm: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BattleEquipment {
    #[prost(uint32, tag = "1")]
    pub id: u32,
    #[prost(uint32, tag = "2")]
    pub level: u32,
    #[prost(uint32, tag = "3")]
    pub promotion: u32,
    #[prost(uint32, tag = "4")]
    pub rank: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BattleRelic {
    #[prost(uint32, tag = "1")]
    pub id: u32,
    #[prost(uint32, tag = "2")]
    pub level: u32,
    #[prost(uint32, tag = "3")]
    pub main_affix_id: u32,
    #[prost(message, repeated, tag = "4")]
    pub sub_affix_list: ::prost::alloc::vec::Vec<RelicAffix>,
    #[prost(uint32, tag = "5")]
    pub unique_id: u32,
    #[prost(uint32, tag = "6")]
    pub cfpfaipjaib: u32,
    #[prost(uint32, tag = "7")]
    pub ipnhjoomhdm: u32,
    #[prost(uint32, tag = "8")]
    pub bggjjiglbco: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AvatarSkillTree {
    #[prost(uint32, tag = "1")]
    pub point_id: u32,
    #[prost(uint32, tag = "2")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RelicAffix {
    #[prost(uint32, tag = "1")]
    pub affix_id: u32,
    #[prost(uint32, tag = "2")]
    pub cnt: u32,
    #[prost(uint32, tag = "3")]
    pub step: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bcdgiinpgnb {
    #[prost(bool, tag = "1")]
    pub amimgecglgm: bool,
    #[prost(uint32, repeated, tag = "2")]
    pub mmikcbdjjlk: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "3")]
    pub hlbofoddpkh: u32,
    #[prost(uint32, tag = "4")]
    pub inhjgmgdcoa: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BattleAvatar {
    #[prost(enumeration = "AvatarType", tag = "1")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "2")]
    pub id: u32,
    #[prost(uint32, tag = "3")]
    pub level: u32,
    #[prost(uint32, tag = "4")]
    pub rank: u32,
    #[prost(uint32, tag = "5")]
    pub index: u32,
    #[prost(message, repeated, tag = "6")]
    pub skilltree_list: ::prost::alloc::vec::Vec<AvatarSkillTree>,
    #[prost(message, repeated, tag = "7")]
    pub equipment_list: ::prost::alloc::vec::Vec<BattleEquipment>,
    #[prost(uint32, tag = "8")]
    pub hp: u32,
    #[prost(uint32, tag = "10")]
    pub promotion: u32,
    #[prost(message, repeated, tag = "11")]
    pub relic_list: ::prost::alloc::vec::Vec<BattleRelic>,
    #[prost(uint32, tag = "12")]
    pub world_level: u32,
    #[prost(uint32, tag = "13")]
    pub dcpnallfhdd: u32,
    #[prost(message, optional, tag = "15")]
    pub ehiacjmfnjp: ::core::option::Option<Bcdgiinpgnb>,
    #[prost(message, optional, tag = "16")]
    pub sp: ::core::option::Option<AmountInfo>,
    #[prost(uint32, tag = "17")]
    pub ikkheknckae: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fhklfbbnpmc {
    #[prost(uint32, tag = "1")]
    pub gcabmpeeflm: u32,
    #[prost(uint32, tag = "2")]
    pub level: u32,
    #[prost(uint32, tag = "3")]
    pub dpafbpjjokk: u32,
    #[prost(uint32, tag = "4")]
    pub onmmdmcacmb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fjhocpiladl {
    #[prost(uint32, tag = "1")]
    pub monster_id: u32,
    #[prost(uint32, tag = "2")]
    pub aiapcboelmg: u32,
    #[prost(uint32, tag = "3")]
    pub max_hp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BattleMonsterWave {
    #[prost(message, repeated, tag = "1")]
    pub monster_list: ::prost::alloc::vec::Vec<Fjhocpiladl>,
    #[prost(message, optional, tag = "2")]
    pub ejahmdkklbn: ::core::option::Option<Fhklfbbnpmc>,
    #[prost(uint32, tag = "3")]
    pub pejhihcbkkg: u32,
    #[prost(uint32, tag = "4")]
    pub iilhbcalikm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BattleBuff {
    #[prost(uint32, tag = "1")]
    pub id: u32,
    #[prost(uint32, tag = "2")]
    pub level: u32,
    #[prost(uint32, tag = "3")]
    pub owner_index: u32,
    #[prost(uint32, tag = "4")]
    pub wave_flag: u32,
    #[prost(uint32, repeated, tag = "5")]
    pub target_index_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(map = "string, float", tag = "6")]
    pub dynamic_values: ::std::collections::HashMap<::prost::alloc::string::String, f32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jcnijimifil {
    #[prost(uint32, tag = "1")]
    pub id: u32,
    #[prost(uint32, tag = "2")]
    pub bhccbdiaoni: u32,
    #[prost(uint32, tag = "3")]
    pub hhoofhgffam: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pljkpichajp {
    #[prost(uint32, tag = "1")]
    pub impgomkanjm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lcnenmpepcm {
    #[prost(uint32, tag = "1")]
    pub id: u32,
    #[prost(uint32, tag = "2")]
    pub bhccbdiaoni: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aopddpeehad {
    #[prost(uint32, tag = "1")]
    pub id: u32,
    #[prost(uint32, tag = "2")]
    pub progress: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BattleTarget {
    #[prost(uint32, tag = "1")]
    pub id: u32,
    #[prost(uint32, tag = "2")]
    pub progress: u32,
    #[prost(uint32, tag = "3")]
    pub total_progress: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hbinjjdphdo {
    #[prost(message, repeated, tag = "1")]
    pub bgnpebhgelb: ::prost::alloc::vec::Vec<BattleTarget>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BattleLineup {
    #[prost(message, repeated, tag = "1")]
    pub avatar_list: ::prost::alloc::vec::Vec<BattleAvatar>,
    #[prost(message, repeated, tag = "2")]
    pub monster_wave_list: ::prost::alloc::vec::Vec<BattleMonsterWave>,
    #[prost(message, repeated, tag = "3")]
    pub buff_list: ::prost::alloc::vec::Vec<BattleBuff>,
    #[prost(uint32, tag = "7")]
    pub world_level: u32,
    #[prost(map = "uint32, message", tag = "9")]
    pub ichnbmifjdi: ::std::collections::HashMap<u32, Hbinjjdphdo>,
    #[prost(message, optional, tag = "10")]
    pub ikijnjopmob: ::core::option::Option<Pljkpichajp>,
    #[prost(message, repeated, tag = "11")]
    pub aieelifmjeb: ::prost::alloc::vec::Vec<BattleAvatar>,
    #[prost(message, optional, tag = "12")]
    pub evolve_build_battle_info: ::core::option::Option<EvolveBuildBattleInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oikpalfedbb {
    #[prost(uint32, tag = "1")]
    pub id: u32,
    #[prost(uint32, tag = "2")]
    pub index: u32,
    #[prost(uint32, tag = "3")]
    pub promotion: u32,
    #[prost(uint32, repeated, tag = "4")]
    pub nkgcfjgbela: ::prost::alloc::vec::Vec<u32>,
    #[prost(enumeration = "Jnengfifgfm", tag = "5")]
    pub ddahdijlcdk: i32,
    #[prost(message, optional, tag = "6")]
    pub sp: ::core::option::Option<AmountInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Plgkbdleacg {
    #[prost(message, repeated, tag = "1")]
    pub avatar_list: ::prost::alloc::vec::Vec<Oikpalfedbb>,
    #[prost(message, repeated, tag = "2")]
    pub monster_wave_list: ::prost::alloc::vec::Vec<BattleMonsterWave>,
    #[prost(message, repeated, tag = "3")]
    pub buff_list: ::prost::alloc::vec::Vec<BattleBuff>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ClientTurnSnapshot {
    #[prost(uint32, tag = "1")]
    pub turn_counter: u32,
    #[prost(uint32, tag = "2")]
    pub random_counter: u32,
    #[prost(uint32, tag = "3")]
    pub anim_event_counter: u32,
    #[prost(message, repeated, tag = "4")]
    pub snapshot_list: ::prost::alloc::vec::Vec<CharacterSnapshot>,
    #[prost(message, repeated, tag = "5")]
    pub anim_event_list: ::prost::alloc::vec::Vec<AnimEventSnapshot>,
    #[prost(uint32, tag = "6")]
    pub fdjamncolcp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GamecoreConfig {
    #[prost(bool, tag = "1")]
    pub is_skip_verify: bool,
    #[prost(uint32, tag = "2")]
    pub max_turn_cnt: u32,
    #[prost(bool, tag = "3")]
    pub is_auto_fight: bool,
    #[prost(string, tag = "4")]
    pub csv_path: ::prost::alloc::string::String,
    #[prost(bool, tag = "5")]
    pub hnompockphk: bool,
    #[prost(bool, tag = "6")]
    pub maliejdnekl: bool,
    #[prost(uint32, tag = "7")]
    pub aoeigdihdpp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BattleBuffMsg {
    #[prost(uint32, repeated, tag = "1")]
    pub buff_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "2")]
    pub buff_index_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "3")]
    pub buff_level_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "4")]
    pub buff_flag_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Flgkjjennbe {
    #[prost(uint32, tag = "1")]
    pub lpjannkfffb: u32,
    #[prost(uint32, tag = "2")]
    pub ahmomoopkda: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cognokjcpcl {
    #[prost(bool, tag = "1")]
    pub dnoabbaohcm: bool,
    #[prost(map = "string, message", tag = "2")]
    pub hoaodinmclh: ::std::collections::HashMap<
        ::prost::alloc::string::String,
        Flgkjjennbe,
    >,
    #[prost(bytes = "vec", tag = "3")]
    pub cjghlbmoekb: ::prost::alloc::vec::Vec<u8>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iljcopanbem {
    #[prost(message, repeated, tag = "1")]
    pub ngjhgmlopep: ::prost::alloc::vec::Vec<ClientTurnSnapshot>,
    #[prost(string, tag = "2")]
    pub nlhkongjalc: ::prost::alloc::string::String,
    #[prost(string, tag = "3")]
    pub labdpnkbaii: ::prost::alloc::string::String,
    #[prost(message, repeated, tag = "4")]
    pub log_string_hash: ::prost::alloc::vec::Vec<BattleReplayStringHash>,
    #[prost(uint32, tag = "5")]
    pub plane_id: u32,
    #[prost(uint32, tag = "6")]
    pub floor_id: u32,
    #[prost(uint32, tag = "7")]
    pub gjofemjfnmg: u32,
    #[prost(uint32, tag = "8")]
    pub lgaidocbhed: u32,
    #[prost(message, optional, tag = "9")]
    pub dajmnolmeni: ::core::option::Option<Cognokjcpcl>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BattleReplay {
    #[prost(uint32, tag = "1")]
    pub version: u32,
    #[prost(uint32, tag = "2")]
    pub logic_random_seed: u32,
    #[prost(uint32, tag = "3")]
    pub stage_id: u32,
    #[prost(message, optional, tag = "4")]
    pub lineup: ::core::option::Option<BattleLineup>,
    #[prost(message, repeated, tag = "5")]
    pub op_list: ::prost::alloc::vec::Vec<BattleOp>,
    #[prost(bytes = "vec", tag = "6")]
    pub turn_snapshot_hash: ::prost::alloc::vec::Vec<u8>,
    #[prost(uint32, tag = "7")]
    pub maze_plane_id: u32,
    #[prost(uint32, repeated, tag = "8")]
    pub extra_ability_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "9")]
    pub is_ai_consider_ultra_skill: bool,
    #[prost(enumeration = "BattleCheckStrategyType", tag = "10")]
    pub check_strategy: i32,
    #[prost(enumeration = "BattleModuleType", tag = "11")]
    pub battle_module_type: i32,
    #[prost(message, repeated, tag = "12")]
    pub mpobegkcikn: ::prost::alloc::vec::Vec<Npjnkmmjfdf>,
    #[prost(uint32, tag = "14")]
    pub kimmjioaodn: u32,
    #[prost(message, optional, tag = "15")]
    pub config: ::core::option::Option<GamecoreConfig>,
    #[prost(bytes = "vec", tag = "16")]
    pub game_core_log_encode: ::prost::alloc::vec::Vec<u8>,
    #[prost(uint32, tag = "17")]
    pub jlcmaghimmd: u32,
    #[prost(uint32, tag = "18")]
    pub hklekgibech: u32,
    #[prost(message, optional, tag = "19")]
    pub nffkbgjpdcm: ::core::option::Option<Plgkbdleacg>,
    #[prost(message, optional, tag = "100")]
    pub mlefdnlpnhb: ::core::option::Option<Iljcopanbem>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BattleReplayStringHash {
    #[prost(int32, tag = "1")]
    pub hash: i32,
    #[prost(string, tag = "2")]
    pub value: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AvatarProperty {
    #[prost(double, tag = "1")]
    pub max_hp: f64,
    #[prost(double, tag = "2")]
    pub attack: f64,
    #[prost(double, tag = "3")]
    pub defence: f64,
    #[prost(double, tag = "4")]
    pub speed: f64,
    #[prost(double, tag = "5")]
    pub left_hp: f64,
    #[prost(double, tag = "6")]
    pub left_sp: f64,
    #[prost(double, tag = "7")]
    pub max_sp: f64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EquipmentProperty {
    #[prost(uint32, tag = "1")]
    pub id: u32,
    #[prost(uint32, tag = "2")]
    pub rank: u32,
    #[prost(uint32, tag = "3")]
    pub promotion: u32,
    #[prost(uint32, tag = "4")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AttackDamageProperty {
    #[prost(string, tag = "1")]
    pub attack_type: ::prost::alloc::string::String,
    #[prost(double, tag = "2")]
    pub damage: f64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SkillUseProperty {
    #[prost(uint32, tag = "1")]
    pub skill_id: u32,
    #[prost(string, tag = "2")]
    pub skill_type: ::prost::alloc::string::String,
    #[prost(uint32, tag = "3")]
    pub skill_level: u32,
    #[prost(uint32, tag = "4")]
    pub skill_use_count: u32,
    #[prost(uint32, tag = "5")]
    pub ibhcfalmohk: u32,
    #[prost(uint32, tag = "6")]
    pub lnbmgegdlna: u32,
    #[prost(uint32, tag = "7")]
    pub cdabkdplgdg: u32,
    #[prost(uint32, tag = "8")]
    pub dfpilaepfme: u32,
    #[prost(uint32, tag = "9")]
    pub lieeojhcdlm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hfdpiocjmlh {
    #[prost(uint32, tag = "1")]
    pub skill_id: u32,
    #[prost(double, tag = "2")]
    pub caimbfndbkg: f64,
    #[prost(uint32, repeated, tag = "3")]
    pub bgnpebhgelb: ::prost::alloc::vec::Vec<u32>,
    #[prost(double, tag = "4")]
    pub damage: f64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SpAddSource {
    #[prost(string, tag = "1")]
    pub source: ::prost::alloc::string::String,
    #[prost(uint32, tag = "2")]
    pub sp_add: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cbkfeoojjhg {
    #[prost(string, tag = "1")]
    pub kikihkoilbb: ::prost::alloc::string::String,
    #[prost(uint32, tag = "2")]
    pub count: u32,
    #[prost(double, tag = "3")]
    pub total_damage: f64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AvatarBattleInfo {
    #[prost(enumeration = "AvatarType", tag = "1")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "2")]
    pub id: u32,
    #[prost(uint32, tag = "3")]
    pub avatar_level: u32,
    #[prost(uint32, tag = "4")]
    pub avatar_rank: u32,
    #[prost(uint32, tag = "5")]
    pub avatar_promotion: u32,
    #[prost(message, optional, tag = "6")]
    pub avatar_status: ::core::option::Option<AvatarProperty>,
    #[prost(message, repeated, tag = "7")]
    pub avatar_skill: ::prost::alloc::vec::Vec<AvatarSkillTree>,
    #[prost(message, repeated, tag = "8")]
    pub avatar_equipment: ::prost::alloc::vec::Vec<EquipmentProperty>,
    #[prost(uint32, tag = "9")]
    pub total_turns: u32,
    #[prost(double, tag = "10")]
    pub total_damage: f64,
    #[prost(double, tag = "11")]
    pub total_heal: f64,
    #[prost(double, tag = "12")]
    pub total_damage_taken: f64,
    #[prost(double, tag = "13")]
    pub total_hp_recover: f64,
    #[prost(double, tag = "14")]
    pub total_sp_cost: f64,
    #[prost(uint32, tag = "15")]
    pub stage_id: u32,
    #[prost(uint32, tag = "16")]
    pub stage_type: u32,
    #[prost(double, tag = "17")]
    pub total_break_damage: f64,
    #[prost(message, repeated, tag = "18")]
    pub attack_type_damage: ::prost::alloc::vec::Vec<AttackDamageProperty>,
    #[prost(message, repeated, tag = "19")]
    pub attack_type_break_damage: ::prost::alloc::vec::Vec<AttackDamageProperty>,
    #[prost(message, repeated, tag = "20")]
    pub attack_type_max_damage: ::prost::alloc::vec::Vec<AttackDamageProperty>,
    #[prost(message, repeated, tag = "21")]
    pub skill_times: ::prost::alloc::vec::Vec<SkillUseProperty>,
    #[prost(double, tag = "22")]
    pub delay_cumulate: f64,
    #[prost(uint32, tag = "23")]
    pub total_sp_add: u32,
    #[prost(message, repeated, tag = "24")]
    pub sp_add_source: ::prost::alloc::vec::Vec<SpAddSource>,
    #[prost(uint32, tag = "25")]
    pub total_bp_cost: u32,
    #[prost(uint32, tag = "26")]
    pub die_times: u32,
    #[prost(uint32, tag = "27")]
    pub revive_times: u32,
    #[prost(uint32, tag = "28")]
    pub break_times: u32,
    #[prost(uint32, tag = "29")]
    pub extra_turns: u32,
    #[prost(double, tag = "30")]
    pub total_shield: f64,
    #[prost(double, tag = "31")]
    pub total_shield_taken: f64,
    #[prost(double, tag = "32")]
    pub total_shield_damage: f64,
    #[prost(message, optional, tag = "33")]
    pub initial_status: ::core::option::Option<AvatarProperty>,
    #[prost(message, repeated, tag = "34")]
    pub relics: ::prost::alloc::vec::Vec<BattleRelic>,
    #[prost(uint32, tag = "35")]
    pub dcpnallfhdd: u32,
    #[prost(message, repeated, tag = "36")]
    pub jnbjkbddnjf: ::prost::alloc::vec::Vec<AttackDamageProperty>,
    #[prost(double, tag = "37")]
    pub eapmimbnoeg: f64,
    #[prost(double, tag = "38")]
    pub cgkikpepfdj: f64,
    #[prost(double, tag = "39")]
    pub fafdadfieil: f64,
    #[prost(double, tag = "40")]
    pub hhhfmdodnip: f64,
    #[prost(message, repeated, tag = "41")]
    pub hocllefijoa: ::prost::alloc::vec::Vec<Cbkfeoojjhg>,
    #[prost(uint32, tag = "42")]
    pub doppeabiago: u32,
    #[prost(uint32, tag = "43")]
    pub gclnpdjmlip: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MonsterProperty {
    #[prost(double, tag = "1")]
    pub max_hp: f64,
    #[prost(double, tag = "2")]
    pub attack: f64,
    #[prost(double, tag = "3")]
    pub defence: f64,
    #[prost(double, tag = "4")]
    pub shield: f64,
    #[prost(double, tag = "5")]
    pub speed: f64,
    #[prost(double, tag = "6")]
    pub left_hp: f64,
    #[prost(double, tag = "7")]
    pub kddegibaeba: f64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Khncccpcbji {
    #[prost(uint32, tag = "1")]
    pub eanfkhaigol: u32,
    #[prost(double, tag = "2")]
    pub bmfkjbokdgf: f64,
    #[prost(uint32, tag = "3")]
    pub gkdpplgiblc: u32,
    #[prost(uint32, tag = "4")]
    pub break_times: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MonsterBattleInfo {
    #[prost(uint32, tag = "1")]
    pub entity_id: u32,
    #[prost(uint32, tag = "2")]
    pub monster_id: u32,
    #[prost(uint32, tag = "3")]
    pub monster_template_id: u32,
    #[prost(uint32, tag = "4")]
    pub monster_level: u32,
    #[prost(message, optional, tag = "5")]
    pub lgpjjdfnadk: ::core::option::Option<MonsterProperty>,
    #[prost(uint32, tag = "6")]
    pub total_turns: u32,
    #[prost(double, tag = "7")]
    pub total_damage: f64,
    #[prost(double, tag = "8")]
    pub total_heal: f64,
    #[prost(double, tag = "9")]
    pub total_damage_taken: f64,
    #[prost(double, tag = "10")]
    pub total_stance_damage_taken: f64,
    #[prost(double, tag = "11")]
    pub total_hp_recover: f64,
    #[prost(uint32, tag = "12")]
    pub stage_id: u32,
    #[prost(uint32, tag = "13")]
    pub battle_id: u32,
    #[prost(uint32, tag = "14")]
    pub monster_type: u32,
    #[prost(message, repeated, tag = "15")]
    pub attack_type_damage: ::prost::alloc::vec::Vec<AttackDamageProperty>,
    #[prost(message, repeated, tag = "16")]
    pub skill_times: ::prost::alloc::vec::Vec<SkillUseProperty>,
    #[prost(uint32, tag = "17")]
    pub stage_type: u32,
    #[prost(double, tag = "18")]
    pub clegoklmbdj: f64,
    #[prost(double, tag = "19")]
    pub delay_cumulate: f64,
    #[prost(enumeration = "DeathSource", tag = "20")]
    pub death_source: i32,
    #[prost(uint32, tag = "21")]
    pub wave: u32,
    #[prost(int32, tag = "22")]
    pub index_in_wave: i32,
    #[prost(uint32, tag = "23")]
    pub phase: u32,
    #[prost(uint32, tag = "24")]
    pub max_phase: u32,
    #[prost(enumeration = "BattleTag", tag = "25")]
    pub battle_tag: i32,
    #[prost(message, repeated, tag = "26")]
    pub ddbhhogcjbd: ::prost::alloc::vec::Vec<Hfdpiocjmlh>,
    #[prost(uint32, tag = "27")]
    pub daldmjnogoi: u32,
    #[prost(message, repeated, tag = "28")]
    pub ooceaplcejn: ::prost::alloc::vec::Vec<Khncccpcbji>,
    #[prost(uint32, tag = "29")]
    pub oloiajdkkja: u32,
    #[prost(uint32, tag = "30")]
    pub jbiolegjdll: u32,
    #[prost(enumeration = "Febapkbodjg", tag = "31")]
    pub okcabhbjlld: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Agpocmnmmdi {
    #[prost(message, optional, tag = "2")]
    pub sp: ::core::option::Option<AmountInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Npjnkmmjfdf {
    #[prost(uint32, tag = "1")]
    pub chgdaadjepi: u32,
    #[prost(message, optional, tag = "2")]
    pub status: ::core::option::Option<Agpocmnmmdi>,
    #[prost(message, repeated, tag = "3")]
    pub ddbhhogcjbd: ::prost::alloc::vec::Vec<Hfdpiocjmlh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bngedbddclf {
    #[prost(uint32, tag = "1")]
    pub jlmofffdlnb: u32,
    #[prost(uint32, tag = "2")]
    pub jfjcjmpbhgk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dokopglkkhi {
    #[prost(uint32, tag = "1")]
    pub ckondfhadld: u32,
    #[prost(uint32, repeated, tag = "2")]
    pub lajeabncdcj: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "3")]
    pub source: u32,
    #[prost(double, tag = "4")]
    pub damage: f64,
    #[prost(uint32, repeated, tag = "5")]
    pub ocbfbdbbmnn: ::prost::alloc::vec::Vec<u32>,
    #[prost(int32, tag = "6")]
    pub gdciinbggcm: i32,
    #[prost(double, tag = "7")]
    pub poflpadbgkk: f64,
    #[prost(uint32, tag = "8")]
    pub edbnlpoilli: u32,
    #[prost(uint32, tag = "9")]
    pub wave: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dkibhfpoinl {
    #[prost(uint32, tag = "1")]
    pub ckondfhadld: u32,
    #[prost(int32, tag = "2")]
    pub pbhhmlcdahe: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oglnjniachp {
    #[prost(uint32, tag = "1")]
    pub eanfkhaigol: u32,
    #[prost(uint32, tag = "2")]
    pub monster_id: u32,
    #[prost(message, repeated, tag = "3")]
    pub dendpdmeakb: ::prost::alloc::vec::Vec<Dkibhfpoinl>,
    #[prost(uint32, tag = "4")]
    pub caimbfndbkg: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jephonmekhd {
    #[prost(enumeration = "BattleStaticticEventType", tag = "1")]
    pub ipnhjoomhdm: i32,
    #[prost(uint32, tag = "2")]
    pub gfoopjkobha: u32,
    #[prost(uint32, tag = "3")]
    pub jnfbeoilkbo: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nbfdglmhcip {
    #[prost(uint32, tag = "1")]
    pub nbpaegehipn: u32,
    #[prost(uint32, tag = "2")]
    pub fmlpglajpad: u32,
    #[prost(int32, tag = "3")]
    pub daobfafhkge: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Melplahkang {
    #[prost(uint32, tag = "1")]
    pub kknamaemhcn: u32,
    #[prost(bool, tag = "2")]
    pub hcllnpjhpil: bool,
    #[prost(message, optional, tag = "3")]
    pub okfhdgandph: ::core::option::Option<Nbfdglmhcip>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hkgmbfknoki {
    #[prost(uint32, tag = "1")]
    pub cngbfhafhel: u32,
    #[prost(int32, tag = "2")]
    pub ajhfilfnglk: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EvolveBuildGearDamageInfo {
    #[prost(uint32, tag = "1")]
    pub gear_id: u32,
    #[prost(double, tag = "2")]
    pub damage: f64,
    #[prost(double, tag = "3")]
    pub hp_damage: f64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ilodiljfpoc {
    #[prost(uint32, repeated, tag = "1")]
    pub dgiclahgoib: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jfcmfnbkocn {
    #[prost(uint32, tag = "1")]
    pub wave: u32,
    #[prost(uint32, tag = "2")]
    pub jfjcjmpbhgk: u32,
    #[prost(uint32, tag = "3")]
    pub fehiccmjlgb: u32,
    #[prost(message, repeated, tag = "4")]
    pub feobmhacmop: ::prost::alloc::vec::Vec<Nbfdglmhcip>,
    #[prost(float, tag = "5")]
    pub caimbfndbkg: f32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iehogoajdia {
    #[prost(uint32, tag = "1")]
    pub oglcfedaggh: u32,
    #[prost(message, repeated, tag = "2")]
    pub keddpjfikap: ::prost::alloc::vec::Vec<Jfcmfnbkocn>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EvolveBuildBattleInfo {
    #[prost(uint32, tag = "1")]
    pub cur_level_id: u32,
    #[prost(uint32, tag = "2")]
    pub cur_period: u32,
    #[prost(uint32, tag = "3")]
    pub cur_coin: u32,
    #[prost(uint32, tag = "4")]
    pub cur_score: u32,
    #[prost(message, repeated, tag = "5")]
    pub weapon_slot_list: ::prost::alloc::vec::Vec<Melplahkang>,
    #[prost(message, repeated, tag = "6")]
    pub accessory_slot_list: ::prost::alloc::vec::Vec<Melplahkang>,
    #[prost(uint32, repeated, tag = "7")]
    pub cur_card_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "8")]
    pub ban_gear_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "9")]
    pub collection: ::core::option::Option<Ilodiljfpoc>,
    #[prost(uint32, repeated, tag = "10")]
    pub allowed_gear_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "11")]
    pub cur_exp: u32,
    #[prost(uint32, tag = "12")]
    pub cur_reroll: u32,
    #[prost(uint32, tag = "13")]
    pub cur_treasure_miss_cnt: u32,
    #[prost(uint32, repeated, tag = "14")]
    pub period_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "15")]
    pub cur_gear_lost_cnt: u32,
    #[prost(uint32, tag = "16")]
    pub cur_wave: u32,
    #[prost(bool, tag = "17")]
    pub is_unlock_gear_reroll: bool,
    #[prost(bool, tag = "18")]
    pub is_unlock_gear_ban: bool,
    #[prost(message, repeated, tag = "19")]
    pub card_list: ::prost::alloc::vec::Vec<Hkgmbfknoki>,
    #[prost(message, repeated, tag = "20")]
    pub gear_damage_list: ::prost::alloc::vec::Vec<EvolveBuildGearDamageInfo>,
    #[prost(uint32, repeated, tag = "21")]
    pub stat_params: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "22")]
    pub is_giveup: bool,
    #[prost(uint32, tag = "23")]
    pub cur_unused_round_cnt: u32,
    #[prost(message, optional, tag = "24")]
    pub stat_log_info: ::core::option::Option<Iehogoajdia>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jjilcmbdnll {
    #[prost(string, tag = "1")]
    pub phase: ::prost::alloc::string::String,
    #[prost(float, tag = "2")]
    pub acnebkepban: f32,
    #[prost(float, tag = "3")]
    pub bjepmnedmfh: f32,
    #[prost(uint32, tag = "4")]
    pub chlmockfmbn: u32,
    #[prost(uint32, tag = "5")]
    pub adeocaolnci: u32,
    #[prost(uint32, tag = "6")]
    pub menojamfiod: u32,
    #[prost(uint32, tag = "7")]
    pub fpglnaebhea: u32,
    #[prost(uint32, tag = "8")]
    pub fhbafmllnck: u32,
    #[prost(uint32, repeated, tag = "9")]
    pub kggpcgelpej: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "10")]
    pub ncjhfbojegc: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Djihhdalbgk {
    #[prost(uint32, tag = "1")]
    pub bijaefognih: u32,
    #[prost(uint32, tag = "2")]
    pub gdmnjkpgblj: u32,
    #[prost(uint32, tag = "3")]
    pub lgcpkoiapbd: u32,
    #[prost(uint32, tag = "4")]
    pub poopdopjeff: u32,
    #[prost(uint32, tag = "5")]
    pub cjdlpjdfcnc: u32,
    #[prost(uint32, tag = "6")]
    pub hlimkoibofp: u32,
    #[prost(uint32, repeated, tag = "7")]
    pub lfemladipfg: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "8")]
    pub cdjclgfloem: ::prost::alloc::vec::Vec<Jjilcmbdnll>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BattleStatistics {
    #[prost(uint32, tag = "1")]
    pub kbgaonbpdin: u32,
    #[prost(uint32, tag = "2")]
    pub gpekldgjijd: u32,
    #[prost(uint32, repeated, tag = "3")]
    pub avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "4")]
    pub nnhdfghaiid: u32,
    #[prost(double, tag = "5")]
    pub jkoiapkjdpo: f64,
    #[prost(double, tag = "6")]
    pub ijoddpfhnga: f64,
    #[prost(message, repeated, tag = "7")]
    pub avatar_battle_list: ::prost::alloc::vec::Vec<AvatarBattleInfo>,
    #[prost(message, repeated, tag = "8")]
    pub monster_battle_list: ::prost::alloc::vec::Vec<MonsterBattleInfo>,
    #[prost(uint32, tag = "9")]
    pub round_cnt: u32,
    #[prost(uint32, tag = "10")]
    pub daigkhegldn: u32,
    #[prost(uint32, tag = "11")]
    pub ilmablehgjb: u32,
    #[prost(uint32, tag = "12")]
    pub pcfhnpkmdlm: u32,
    #[prost(map = "string, float", tag = "13")]
    pub custom_values: ::std::collections::HashMap<::prost::alloc::string::String, f32>,
    #[prost(uint32, tag = "14")]
    pub iemdkkebami: u32,
    #[prost(message, repeated, tag = "16")]
    pub laipipbiajo: ::prost::alloc::vec::Vec<Npjnkmmjfdf>,
    #[prost(enumeration = "BattleEndReason", tag = "19")]
    pub mkfokblhlhl: i32,
    #[prost(message, repeated, tag = "21")]
    pub mbbaaejeoce: ::prost::alloc::vec::Vec<Dokopglkkhi>,
    #[prost(int32, repeated, tag = "22")]
    pub cfeichnimie: ::prost::alloc::vec::Vec<i32>,
    #[prost(message, repeated, tag = "23")]
    pub onnckmfengl: ::prost::alloc::vec::Vec<Oglnjniachp>,
    #[prost(message, repeated, tag = "26")]
    pub jgcdmooffnf: ::prost::alloc::vec::Vec<Jephonmekhd>,
    #[prost(message, repeated, tag = "27")]
    pub fhghmfblmdo: ::prost::alloc::vec::Vec<Ekopdgaflda>,
    #[prost(map = "uint32, message", tag = "28")]
    pub ichnbmifjdi: ::std::collections::HashMap<u32, Hbinjjdphdo>,
    #[prost(message, repeated, tag = "29")]
    pub pjnmbldjifm: ::prost::alloc::vec::Vec<Hkfcdgjgipf>,
    #[prost(message, optional, tag = "30")]
    pub evolve_build_battle_info: ::core::option::Option<EvolveBuildBattleInfo>,
    #[prost(message, optional, tag = "31")]
    pub ednofebkpbg: ::core::option::Option<Djihhdalbgk>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hkfcdgjgipf {
    #[prost(uint32, tag = "1")]
    pub bbgffccingf: u32,
    #[prost(uint32, tag = "2")]
    pub keibhaofceh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ekopdgaflda {
    #[prost(enumeration = "Jnengfifgfm", tag = "1")]
    pub ipnhjoomhdm: i32,
    #[prost(uint32, tag = "2")]
    pub id: u32,
    #[prost(message, optional, tag = "3")]
    pub sp: ::core::option::Option<AmountInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct HeroPath {
    #[prost(uint32, tag = "1")]
    pub hero_path_type: u32,
    #[prost(uint32, tag = "2")]
    pub level: u32,
    #[prost(uint32, tag = "3")]
    pub exp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BattleResult {
    #[prost(enumeration = "BattleCheckResultType", tag = "1")]
    pub retcode: i32,
    #[prost(enumeration = "BattleEndStatus", tag = "2")]
    pub end_status: i32,
    #[prost(message, optional, tag = "3")]
    pub stt: ::core::option::Option<BattleStatistics>,
    #[prost(bytes = "vec", tag = "4")]
    pub game_core_log_encode: ::prost::alloc::vec::Vec<u8>,
    #[prost(map = "string, uint32", tag = "5")]
    pub tags: ::std::collections::HashMap<::prost::alloc::string::String, u32>,
    #[prost(uint32, tag = "6")]
    pub mismatch_turn_count: u32,
    #[prost(uint32, tag = "7")]
    pub kkhfoggmkdf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CharacterSnapshot {
    #[prost(uint32, tag = "1")]
    pub runtime_id: u32,
    #[prost(uint64, repeated, tag = "2")]
    pub properties: ::prost::alloc::vec::Vec<u64>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AnimEventSnapshot {
    #[prost(string, tag = "1")]
    pub event_name: ::prost::alloc::string::String,
    #[prost(uint32, tag = "2")]
    pub count: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LoginActivityData {
    #[prost(uint32, tag = "13")]
    pub login_days: u32,
    #[prost(uint32, repeated, tag = "10")]
    pub has_taken_login_activity_reward_days_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "14")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetLoginActivityCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetLoginActivityScRsp {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "15")]
    pub login_activity_list: ::prost::alloc::vec::Vec<LoginActivityData>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TakeLoginActivityRewardCsReq {
    #[prost(uint32, tag = "3")]
    pub take_days: u32,
    #[prost(uint32, tag = "6")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TakeLoginActivityRewardScRsp {
    #[prost(message, optional, tag = "11")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "1")]
    pub id: u32,
    #[prost(uint32, tag = "7")]
    pub take_days: u32,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ooljpplljnk {
    #[prost(uint32, tag = "3")]
    pub nknoilmdemg: u32,
    #[prost(int64, tag = "9")]
    pub end_time: i64,
    #[prost(uint32, tag = "6")]
    pub bcnbcoijiao: u32,
    #[prost(int64, tag = "13")]
    pub begin_time: i64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Phkdfagiohm {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kopffhkkgce {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "8")]
    pub ehknfiakneo: ::prost::alloc::vec::Vec<Ooljpplljnk>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kpgpnachigg {
    #[prost(uint32, tag = "2")]
    pub stage_id: u32,
    #[prost(bool, tag = "8")]
    pub kiijmkkfmkj: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eioklnolmen {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cfnlopbedoe {
    #[prost(uint32, tag = "8")]
    pub leplebfiobp: u32,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "11")]
    pub cmcpgnpabnd: ::prost::alloc::vec::Vec<Kpgpnachigg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fmjonijegjj {
    #[prost(message, optional, tag = "5")]
    pub iahpnhgledm: ::core::option::Option<Kpgpnachigg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gcholemknio {
    #[prost(uint32, tag = "4")]
    pub stage_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ogilhfefifi {
    #[prost(message, optional, tag = "1")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mkgdbemaidb {
    #[prost(uint32, tag = "10")]
    pub stage_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Flflajblejg {
    #[prost(uint32, tag = "9")]
    pub stage_id: u32,
    #[prost(message, optional, tag = "6")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lnjockahhpi {
    #[prost(uint32, tag = "13")]
    pub stage_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jkkomcadgac {
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(uint32, tag = "14")]
    pub stage_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ajgmmgeajml {
    #[prost(uint32, tag = "11")]
    pub stage_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Abdegagcoob {
    #[prost(uint32, tag = "14")]
    pub stage_id: u32,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mdhlbjepofa {
    #[prost(uint32, tag = "9")]
    pub leplebfiobp: u32,
    #[prost(enumeration = "TrialActivityStatus", tag = "6")]
    pub status: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Docaoinpkng {
    #[prost(uint32, tag = "1")]
    pub nikfggjacec: u32,
    #[prost(bool, tag = "4")]
    pub mnhipjdodao: bool,
    #[prost(uint32, tag = "11")]
    pub bcnbcoijiao: u32,
    #[prost(bool, tag = "2")]
    pub fmlakgholdl: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cobgpbgfjpp {
    #[prost(int64, tag = "6")]
    pub end_time: i64,
    #[prost(uint32, tag = "5")]
    pub nikfggjacec: u32,
    #[prost(int64, tag = "7")]
    pub begin_time: i64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cghkhlbgach {
    #[prost(uint32, repeated, tag = "5")]
    pub nhnhoodcgie: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oimjojicbdm {
    #[prost(message, repeated, tag = "7")]
    pub ognchkgonim: ::prost::alloc::vec::Vec<Docaoinpkng>,
    #[prost(message, repeated, tag = "8")]
    pub mmhdidepacc: ::prost::alloc::vec::Vec<Cobgpbgfjpp>,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Phnlmjeacpo {
    #[prost(uint32, tag = "11")]
    pub nikfggjacec: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Knamebkcden {
    #[prost(uint32, tag = "14")]
    pub nikfggjacec: u32,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ibhlmefeldd {
    #[prost(uint32, tag = "14")]
    pub nikfggjacec: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Phdbkopflnk {
    #[prost(uint32, tag = "11")]
    pub nikfggjacec: u32,
    #[prost(message, optional, tag = "3")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EnterAdventureCsReq {
    #[prost(uint32, tag = "8")]
    pub map_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EnterAdventureScRsp {
    #[prost(message, optional, tag = "11")]
    pub scene: ::core::option::Option<SceneInfo>,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mahhgiaocpo {
    #[prost(int64, tag = "11")]
    pub end_time: i64,
    #[prost(int64, tag = "3")]
    pub begin_time: i64,
    #[prost(uint32, tag = "4")]
    pub gacha_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fjonchnkjao {
    #[prost(uint32, repeated, tag = "6")]
    pub jmclekmoilm: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aldgghiagci {
    #[prost(message, repeated, tag = "3")]
    pub haambpebgdj: ::prost::alloc::vec::Vec<Mahhgiaocpo>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aombpieacbi {
    #[prost(uint32, tag = "8")]
    pub bbjfcfijjpo: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Idecbefiilm {
    #[prost(uint32, tag = "5")]
    pub bbjfcfijjpo: u32,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oedijfpighe {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pdponpianej {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Llpodkjkjck {
    #[prost(message, repeated, tag = "6")]
    pub elbdngbakop: ::prost::alloc::vec::Vec<Ckjmagdkfjj>,
    #[prost(uint32, tag = "9")]
    pub oajohliocmg: u32,
    #[prost(uint32, repeated, tag = "4")]
    pub jpieajikioh: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "3")]
    pub elgjckaejld: u32,
    #[prost(uint32, tag = "7")]
    pub skill_index: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lpfijmhjddp {
    #[prost(uint32, tag = "5")]
    pub elgjckaejld: u32,
    #[prost(message, optional, tag = "3")]
    pub battle_info: ::core::option::Option<Bihglhmefjo>,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Enilfkokghg {
    #[prost(uint32, tag = "5")]
    pub fgbmdjjdkel: u32,
    #[prost(uint32, tag = "9")]
    pub meekkgnihle: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gammaahfadc {
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(message, optional, tag = "15")]
    pub battle_info: ::core::option::Option<Bihglhmefjo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mikpamgnhod {
    #[prost(uint32, tag = "11")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "14")]
    pub slot: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fhmeohkhkdh {
    #[prost(uint32, tag = "12")]
    pub exp: u32,
    #[prost(uint32, tag = "1")]
    pub ocpmdfbogfp: u32,
    #[prost(message, optional, tag = "4")]
    pub sp: ::core::option::Option<AmountInfo>,
    #[prost(uint32, tag = "13")]
    pub promotion: u32,
    #[prost(uint32, tag = "14")]
    pub amnmbkipaoc: u32,
    #[prost(message, repeated, tag = "5")]
    pub nkgcfjgbela: ::prost::alloc::vec::Vec<Mikpamgnhod>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bfjhdmkmlcg {
    #[prost(uint32, tag = "7")]
    pub slot: u32,
    #[prost(uint32, repeated, tag = "15")]
    pub efanoijolef: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kdooecbniab {
    #[prost(uint32, tag = "9")]
    pub num: u32,
    #[prost(uint32, tag = "6")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "4")]
    pub keodhdbjeja: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iecejcpdfge {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iiempapiibd {
    #[prost(message, repeated, tag = "12")]
    pub lineup_list: ::prost::alloc::vec::Vec<Bfjhdmkmlcg>,
    #[prost(uint32, tag = "3")]
    pub mdgjnegijec: u32,
    #[prost(uint32, tag = "4")]
    pub kbhkdoilegm: u32,
    #[prost(uint32, tag = "9")]
    pub jmkeniehgda: u32,
    #[prost(uint32, tag = "11")]
    pub dgaafomjaic: u32,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, tag = "1")]
    pub cbcjmabjjbi: u32,
    #[prost(message, repeated, tag = "8")]
    pub aoehffgnfgg: ::prost::alloc::vec::Vec<Fhmeohkhkdh>,
    #[prost(message, repeated, tag = "13")]
    pub apcbohediba: ::prost::alloc::vec::Vec<Kdooecbniab>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fgbfmblmijn {
    #[prost(message, optional, tag = "6")]
    pub lineup: ::core::option::Option<Bfjhdmkmlcg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cgmjklcpclg {
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(message, optional, tag = "10")]
    pub lineup: ::core::option::Option<Bfjhdmkmlcg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pcdpaehbhll {
    #[prost(uint32, tag = "12")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "10")]
    pub amnmbkipaoc: u32,
    #[prost(uint32, tag = "4")]
    pub slot: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ionddmgddoh {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(message, optional, tag = "12")]
    pub amhjhnabmhg: ::core::option::Option<Fhmeohkhkdh>,
    #[prost(message, optional, tag = "6")]
    pub copmokfakcn: ::core::option::Option<Kdooecbniab>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mhoipbgmfag {
    #[prost(uint32, tag = "2")]
    pub amnmbkipaoc: u32,
    #[prost(uint32, tag = "14")]
    pub slot: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lfoiciboolj {
    #[prost(message, optional, tag = "15")]
    pub copmokfakcn: ::core::option::Option<Kdooecbniab>,
    #[prost(message, optional, tag = "2")]
    pub amhjhnabmhg: ::core::option::Option<Fhmeohkhkdh>,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gbonoehanoi {
    #[prost(uint32, tag = "11")]
    pub kpjkjdakbpk: u32,
    #[prost(uint32, tag = "9")]
    pub amnmbkipaoc: u32,
    #[prost(uint32, tag = "12")]
    pub dgaafomjaic: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iccnlebpofa {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, tag = "4")]
    pub dgaafomjaic: u32,
    #[prost(message, optional, tag = "5")]
    pub amhjhnabmhg: ::core::option::Option<Fhmeohkhkdh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iipiomdficb {
    #[prost(uint32, tag = "4")]
    pub fgbmdjjdkel: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Blhmfmkjgni {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(uint32, tag = "9")]
    pub fgbmdjjdkel: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nfbkooibilo {
    #[prost(uint32, tag = "3")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fljmccgpcfh {
    #[prost(message, optional, tag = "2")]
    pub battle_info: ::core::option::Option<Bihglhmefjo>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hhoakklggai {
    #[prost(message, optional, tag = "7")]
    pub lineup: ::core::option::Option<Bfjhdmkmlcg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gkfjnnfpmol {
    #[prost(uint32, tag = "7")]
    pub dgaafomjaic: u32,
    #[prost(message, repeated, tag = "11")]
    pub iacaleeball: ::prost::alloc::vec::Vec<Fhmeohkhkdh>,
    #[prost(message, optional, tag = "3")]
    pub amhjhnabmhg: ::core::option::Option<Fhmeohkhkdh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dnfgnamifof {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kmdfndlaldd {
    #[prost(uint32, repeated, tag = "13")]
    pub ikdilkhcgei: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "2")]
    pub pohflbmfefe: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "15")]
    pub enpocakplhn: u32,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aegdpkanflf {
    #[prost(uint32, tag = "15")]
    pub meekkgnihle: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aaebmcliahk {
    #[prost(uint32, tag = "2")]
    pub cbcjmabjjbi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cgafijelnni {
    #[prost(uint32, tag = "12")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "4")]
    pub num: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Epflijoamno {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iimafmkbpph {
    #[prost(uint32, tag = "13")]
    pub mdgjnegijec: u32,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aeadenfjaon {
    #[prost(uint32, tag = "2")]
    pub mdgjnegijec: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ogcgolliado {
    #[prost(uint32, tag = "7")]
    pub meekkgnihle: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nimfbcmdfoh {
    #[prost(uint32, tag = "8")]
    pub meekkgnihle: u32,
    #[prost(message, optional, tag = "7")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jfgffilahen {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jjbmfiahaop {
    #[prost(uint32, tag = "11")]
    pub map_id: u32,
    #[prost(uint32, tag = "12")]
    pub epiijjhecfm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mcbcabepekp {
    #[prost(uint32, tag = "1")]
    pub level: u32,
    #[prost(uint32, tag = "3")]
    pub klihmdbpcnc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jkdbepahkcj {
    #[prost(uint32, repeated, tag = "7")]
    pub bbhgbhbipjb: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "11")]
    pub gnpgpcfcbjn: ::prost::alloc::vec::Vec<LogisticsScore>,
    #[prost(message, repeated, tag = "3")]
    pub eiimhenpjcp: ::prost::alloc::vec::Vec<Jjbmfiahaop>,
    #[prost(message, repeated, tag = "6")]
    pub bjllhdgcapp: ::prost::alloc::vec::Vec<Bdnpddoddbf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cnapbdadenp {
    #[prost(message, repeated, tag = "5")]
    pub aggedhebpah: ::prost::alloc::vec::Vec<Nokcldfpklk>,
    #[prost(message, optional, tag = "10")]
    pub nbnghhbddak: ::core::option::Option<Jkdbepahkcj>,
    #[prost(uint32, tag = "2")]
    pub lghlcimmlbh: u32,
    #[prost(uint32, repeated, tag = "11")]
    pub hppeleeoimn: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "13")]
    pub lamkpjfledm: ::core::option::Option<Coapedijklf>,
    #[prost(uint32, repeated, tag = "15")]
    pub cpkipncljoc: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(map = "uint32, uint32", tag = "4")]
    pub gefocnockgm: ::std::collections::HashMap<u32, u32>,
    #[prost(uint32, repeated, tag = "6")]
    pub jmhmjpbolpk: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "14")]
    pub level: u32,
    #[prost(message, optional, tag = "7")]
    pub hmaikoafhjc: ::core::option::Option<Cijnpdehick>,
    #[prost(uint32, tag = "12")]
    pub jgaomnekgdk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dflbpnciafo {
    #[prost(uint32, tag = "15")]
    pub ekopggfipob: u32,
    #[prost(uint32, tag = "7")]
    pub egmpjngaikb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mpjconkgdin {
    #[prost(message, repeated, tag = "4")]
    pub bgjjaeihiib: ::prost::alloc::vec::Vec<Dflbpnciafo>,
    #[prost(uint32, tag = "1")]
    pub ciojdeodepl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AlleyPlacingShip {
    #[prost(message, repeated, tag = "3")]
    pub goods_list: ::prost::alloc::vec::Vec<Mpjconkgdin>,
    #[prost(uint32, tag = "6")]
    pub ship_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bjdognchfbk {
    #[prost(uint32, tag = "11")]
    pub ijoddpfhnga: u32,
    #[prost(message, optional, tag = "6")]
    pub kphoapdnfil: ::core::option::Option<AlleyPlacingShip>,
    #[prost(uint32, tag = "10")]
    pub mpdmhpbpceo: u32,
    #[prost(uint32, tag = "7")]
    pub nbiklhecnhf: u32,
    #[prost(uint32, tag = "15")]
    pub deplbmpnjfh: u32,
    #[prost(uint32, tag = "14")]
    pub epmdhfklccb: u32,
    #[prost(uint32, tag = "1")]
    pub ofaejnhpmpf: u32,
    #[prost(uint32, tag = "9")]
    pub lompmkndklm: u32,
    #[prost(uint32, tag = "5")]
    pub egfmhkcjeki: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jkoeodldlon {
    #[prost(uint32, tag = "3")]
    pub event_id: u32,
    #[prost(uint32, tag = "12")]
    pub lkmlhignkba: u32,
    #[prost(uint32, tag = "13")]
    pub alkadjhmijb: u32,
    #[prost(uint32, tag = "8")]
    pub ggdadkeiahe: u32,
    #[prost(uint32, tag = "4")]
    pub fkioflonenk: u32,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(uint32, tag = "9")]
    pub dfalcambgfk: u32,
    #[prost(uint32, tag = "10")]
    pub dgollhpioeh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Coapedijklf {
    #[prost(uint32, tag = "11")]
    pub nnoofiicegk: u32,
    #[prost(uint32, repeated, tag = "5")]
    pub dnnahjaofdd: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "12")]
    pub pjheffodiig: u32,
    #[prost(bool, tag = "2")]
    pub jdeocfijmob: bool,
    #[prost(uint32, tag = "13")]
    pub ibhedcpbcio: u32,
    #[prost(uint32, repeated, tag = "14")]
    pub ieplhlajkmk: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bdkcgdekbeo {
    #[prost(message, optional, tag = "10")]
    pub ajfnjdegdje: ::core::option::Option<Coapedijklf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Opmdlgbjnjc {
    #[prost(uint32, tag = "4")]
    pub pbkilallilk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Afaocelkgmn {
    #[prost(uint32, tag = "1")]
    pub klihmdbpcnc: u32,
    #[prost(uint32, repeated, tag = "4")]
    pub plkfflaeafp: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "5")]
    pub ahiiafpmkfo: u32,
    #[prost(uint32, tag = "14")]
    pub nghnnmcnkil: u32,
    #[prost(uint32, repeated, tag = "13")]
    pub aoccjieojda: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "6")]
    pub flidpncmoeb: u32,
    #[prost(uint32, repeated, tag = "11")]
    pub clffoknioee: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bdnpddoddbf {
    #[prost(uint32, tag = "8")]
    pub ijoddpfhnga: u32,
    #[prost(message, repeated, tag = "1")]
    pub ccpgnmclgbd: ::prost::alloc::vec::Vec<Afaocelkgmn>,
    #[prost(uint32, tag = "2")]
    pub map_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LogisticsScore {
    #[prost(message, optional, tag = "15")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "2")]
    pub unlock_level: u32,
    #[prost(uint32, tag = "7")]
    pub max_score: u32,
    #[prost(uint32, tag = "9")]
    pub last_max_score: u32,
    #[prost(uint32, tag = "11")]
    pub map_id: u32,
    #[prost(uint32, tag = "14")]
    pub last_level: u32,
    #[prost(uint32, tag = "3")]
    pub cur_score: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fnhejnkmmob {
    #[prost(bool, tag = "7")]
    pub nlldmkephep: bool,
    #[prost(message, repeated, tag = "10")]
    pub ahofblglbnc: ::prost::alloc::vec::Vec<Bdnpddoddbf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lohaaiccngj {
    #[prost(message, repeated, tag = "3")]
    pub gnpgpcfcbjn: ::prost::alloc::vec::Vec<LogisticsScore>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kkjnbaakhlc {
    #[prost(uint32, tag = "13")]
    pub event_id: u32,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "11")]
    pub gnpgpcfcbjn: ::prost::alloc::vec::Vec<LogisticsScore>,
    #[prost(bool, tag = "5")]
    pub nlldmkephep: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nokcldfpklk {
    #[prost(uint32, tag = "13")]
    pub event_id: u32,
    #[prost(uint32, tag = "1")]
    pub kbdflpbfmed: u32,
    #[prost(enumeration = "Mahbbafefag", tag = "9")]
    pub state: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dgkhmdjldog {
    #[prost(uint32, tag = "7")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dmjfhbkadfg {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(uint32, tag = "13")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nonhdokkcfg {
    #[prost(uint32, tag = "14")]
    pub ocbccjiaicj: u32,
    #[prost(message, optional, tag = "4")]
    pub hgleibdnapo: ::core::option::Option<Nokcldfpklk>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aibpkkcohdm {
    #[prost(uint32, tag = "10")]
    pub dahdcgcphlc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ekojcimhmap {
    #[prost(uint32, tag = "9")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Idilfalngec {
    #[prost(message, optional, tag = "5")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(uint32, tag = "8")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mofckdbnkpl {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ndfijlmklan {
    #[prost(uint32, tag = "3")]
    pub level: u32,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ofeibdefeai {
    #[prost(uint32, tag = "5")]
    pub jgaomnekgdk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bhjlndcbdmg {
    #[prost(message, repeated, tag = "2")]
    pub ahofblglbnc: ::prost::alloc::vec::Vec<Bdnpddoddbf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ngnfmmcmpak {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "1")]
    pub ahofblglbnc: ::prost::alloc::vec::Vec<Bdnpddoddbf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mopkealiaji {
    #[prost(message, optional, tag = "3")]
    pub nbnghhbddak: ::core::option::Option<Jkdbepahkcj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cijnpdehick {
    #[prost(map = "uint32, uint32", tag = "11")]
    pub kmlicfniife: ::std::collections::HashMap<u32, u32>,
    #[prost(uint32, tag = "6")]
    pub gcmmgiibjhf: u32,
    #[prost(uint32, tag = "5")]
    pub lpijcebcmpl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fgkhjdfnaee {
    #[prost(message, optional, tag = "15")]
    pub imijkbagpoo: ::core::option::Option<Cijnpdehick>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eeghepbfjlm {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ihpeeopfgab {
    #[prost(message, repeated, tag = "8")]
    pub bjllhdgcapp: ::prost::alloc::vec::Vec<Bdnpddoddbf>,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fohpiioicfp {
    #[prost(map = "uint32, uint32", tag = "11")]
    pub gefocnockgm: ::std::collections::HashMap<u32, u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lianhfnpkle {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lehegkffdgc {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(uint32, tag = "11")]
    pub nibfpieeejm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cafhmflmhia {
    #[prost(uint32, tag = "12")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cgcdhfojflm {
    #[prost(message, optional, tag = "14")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ngieegemooh {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cpaihcginkm {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jmcjpecijnp {
    #[prost(uint32, tag = "12")]
    pub ipnhjoomhdm: u32,
    #[prost(uint32, tag = "11")]
    pub cfpfaipjaib: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oaiogfodhlc {
    #[prost(uint32, tag = "14")]
    pub num: u32,
    #[prost(uint32, tag = "10")]
    pub monster_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ArchiveData {
    #[prost(uint32, repeated, tag = "2")]
    pub agdfngfgagl: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "8")]
    pub fmlefkknikp: ::prost::alloc::vec::Vec<Oaiogfodhlc>,
    #[prost(uint32, repeated, tag = "5")]
    pub lplhpdmoapn: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "14")]
    pub kcjiblndbbg: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "10")]
    pub relic_list: ::prost::alloc::vec::Vec<Jmcjpecijnp>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetArchiveDataCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetArchiveDataScRsp {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(message, optional, tag = "14")]
    pub archive_data: ::core::option::Option<ArchiveData>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetUpdatedArchiveDataCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetUpdatedArchiveDataScRsp {
    #[prost(message, optional, tag = "14")]
    pub archive_data: ::core::option::Option<ArchiveData>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetAvatarDataCsReq {
    #[prost(bool, tag = "8")]
    pub is_get_all: bool,
    #[prost(uint32, repeated, tag = "3")]
    pub base_avatar_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EquipRelic {
    #[prost(uint32, tag = "4")]
    pub ipnhjoomhdm: u32,
    #[prost(uint32, tag = "11")]
    pub llepdadmfdo: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Avatar {
    #[prost(uint32, tag = "14")]
    pub base_avatar_id: u32,
    #[prost(uint32, tag = "6")]
    pub equipment_unique_id: u32,
    #[prost(message, repeated, tag = "3")]
    pub skilltree_list: ::prost::alloc::vec::Vec<AvatarSkillTree>,
    #[prost(uint32, tag = "9")]
    pub exp: u32,
    #[prost(uint32, tag = "15")]
    pub rank: u32,
    #[prost(bool, tag = "10")]
    pub gjdiplfecfa: bool,
    #[prost(uint32, tag = "1")]
    pub pphcmdmhnpa: u32,
    #[prost(uint32, tag = "4")]
    pub promotion: u32,
    #[prost(uint64, tag = "2")]
    pub ojneijnggfo: u64,
    #[prost(uint32, tag = "13")]
    pub level: u32,
    #[prost(message, repeated, tag = "5")]
    pub amafpakcckf: ::prost::alloc::vec::Vec<EquipRelic>,
    #[prost(uint32, repeated, tag = "8")]
    pub jdfamcdflje: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetAvatarDataScRsp {
    #[prost(uint32, repeated, tag = "12")]
    pub modgpomolgi: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "2")]
    pub is_all: bool,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "8")]
    pub avatar_list: ::prost::alloc::vec::Vec<Avatar>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AvatarExpUpCsReq {
    #[prost(message, optional, tag = "6")]
    pub item_cost: ::core::option::Option<ItemCostData>,
    #[prost(uint32, tag = "5")]
    pub base_avatar_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AvatarExpUpScRsp {
    #[prost(message, repeated, tag = "1")]
    pub return_item_list: ::prost::alloc::vec::Vec<PileItem>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UnlockSkilltreeCsReq {
    #[prost(uint32, tag = "8")]
    pub level: u32,
    #[prost(message, repeated, tag = "5")]
    pub item_list: ::prost::alloc::vec::Vec<ItemCost>,
    #[prost(uint32, tag = "7")]
    pub point_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UnlockSkilltreeScRsp {
    #[prost(uint32, tag = "9")]
    pub level: u32,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(uint32, tag = "12")]
    pub point_id: u32,
    #[prost(uint32, tag = "1")]
    pub base_avatar_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PromoteAvatarCsReq {
    #[prost(uint32, tag = "7")]
    pub base_avatar_id: u32,
    #[prost(message, repeated, tag = "13")]
    pub item_list: ::prost::alloc::vec::Vec<ItemCost>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PromoteAvatarScRsp {
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Copkgioejac {
    #[prost(uint32, tag = "10")]
    pub imhlbinfhlh: u32,
    #[prost(uint32, tag = "3")]
    pub equipment_unique_id: u32,
    #[prost(uint32, tag = "4")]
    pub base_avatar_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dmffnmijahi {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aafgmacgenl {
    #[prost(uint32, tag = "8")]
    pub base_avatar_id: u32,
    #[prost(uint32, tag = "14")]
    pub imhlbinfhlh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Blkahddkngl {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Acjmadmojdf {
    #[prost(message, optional, tag = "9")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "3")]
    pub base_avatar_id: u32,
    #[prost(enumeration = "AddAvatarSrc", tag = "10")]
    pub dcbmedkclgc: i32,
    #[prost(bool, tag = "12")]
    pub is_new: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ogkjcmdbknc {
    #[prost(uint32, tag = "9")]
    pub base_avatar_id: u32,
    #[prost(uint32, tag = "11")]
    pub rank: u32,
    #[prost(message, optional, tag = "4")]
    pub cost_data: ::core::option::Option<ItemCostData>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kdpfkfkgfjl {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gfdmhpknpbg {
    #[prost(uint32, tag = "13")]
    pub mnejjichcbd: u32,
    #[prost(uint32, tag = "5")]
    pub llepdadmfdo: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oakankcfbec {
    #[prost(message, repeated, tag = "12")]
    pub param_list: ::prost::alloc::vec::Vec<Gfdmhpknpbg>,
    #[prost(uint32, tag = "13")]
    pub imhlbinfhlh: u32,
    #[prost(uint32, tag = "6")]
    pub base_avatar_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iigbcffpcog {
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cnpajjnhfpa {
    #[prost(uint32, tag = "8")]
    pub base_avatar_id: u32,
    #[prost(uint32, tag = "1")]
    pub imhlbinfhlh: u32,
    #[prost(uint32, repeated, tag = "6")]
    pub imkiddhlpfe: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hhjoejdhdfo {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gefmffkphjh {
    #[prost(uint32, tag = "1")]
    pub promotion: u32,
    #[prost(uint32, tag = "8")]
    pub base_avatar_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mojmhlbnlol {
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(message, optional, tag = "5")]
    pub mpkghigdoaj: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jegcjanlbba {
    #[prost(uint32, tag = "14")]
    pub ckondfhadld: u32,
    #[prost(uint32, tag = "9")]
    pub ncjjikokipl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mkfohmedgdj {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ibgpkieheaf {
    #[prost(uint32, tag = "15")]
    pub ckondfhadld: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hpemkhdenga {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Licecebfgmn {
    #[prost(uint32, tag = "5")]
    pub ncjjikokipl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kmlnejjiiog {
    #[prost(bool, tag = "10")]
    pub gjdiplfecfa: bool,
    #[prost(uint32, tag = "9")]
    pub ckondfhadld: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gphjkfgciik {
    #[prost(bool, tag = "14")]
    pub gjdiplfecfa: bool,
    #[prost(uint32, tag = "8")]
    pub ckondfhadld: u32,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PveBattleResultCsReq {
    #[prost(message, repeated, tag = "6")]
    pub op_list: ::prost::alloc::vec::Vec<BattleOp>,
    #[prost(message, optional, tag = "13")]
    pub stt: ::core::option::Option<BattleStatistics>,
    #[prost(uint32, tag = "9")]
    pub jlcmaghimmd: u32,
    #[prost(uint32, tag = "2")]
    pub stage_id: u32,
    #[prost(bool, tag = "12")]
    pub bdddmphnkog: bool,
    #[prost(bool, tag = "11")]
    pub is_ai_consider_ultra_skill: bool,
    #[prost(uint32, tag = "4")]
    pub ghhhnciegnb: u32,
    #[prost(uint32, tag = "5")]
    pub ijoddpfhnga: u32,
    #[prost(bool, tag = "15")]
    pub is_auto_fight: bool,
    #[prost(bytes = "vec", tag = "14")]
    pub turn_snapshot_hash: ::prost::alloc::vec::Vec<u8>,
    #[prost(uint32, tag = "8")]
    pub battle_id: u32,
    #[prost(map = "string, uint32", tag = "3")]
    pub jllpgikpabi: ::std::collections::HashMap<::prost::alloc::string::String, u32>,
    #[prost(uint32, tag = "10")]
    pub res_version: u32,
    #[prost(enumeration = "BattleEndStatus", tag = "7")]
    pub end_status: i32,
    #[prost(string, tag = "1")]
    pub labdpnkbaii: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PveBattleResultScRsp {
    #[prost(uint32, tag = "6")]
    pub battle_id: u32,
    #[prost(uint32, tag = "12")]
    pub event_id: u32,
    #[prost(string, tag = "8")]
    pub gflnhcmnjac: ::prost::alloc::string::String,
    #[prost(message, optional, tag = "4")]
    pub gjogdhmkfbk: ::core::option::Option<ItemList>,
    #[prost(enumeration = "BattleEndStatus", tag = "13")]
    pub end_status: i32,
    #[prost(uint32, tag = "11")]
    pub ckfcfkkpcmi: u32,
    #[prost(string, tag = "3")]
    pub cdfoigmepcp: ::prost::alloc::string::String,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(uint32, tag = "5")]
    pub iogifefjpmj: u32,
    #[prost(bool, tag = "1")]
    pub check_identical: bool,
    #[prost(uint32, tag = "15")]
    pub mismatch_turn_count: u32,
    #[prost(message, optional, tag = "2")]
    pub aikacoomcae: ::core::option::Option<ItemList>,
    #[prost(message, optional, tag = "14")]
    pub nlilccnjmjl: ::core::option::Option<ItemList>,
    #[prost(message, repeated, tag = "7")]
    pub battle_avatar_list: ::prost::alloc::vec::Vec<BattleAvatar>,
    #[prost(uint32, tag = "9")]
    pub stage_id: u32,
    #[prost(message, optional, tag = "588")]
    pub niecmfdjnhh: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QuitBattleCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QuitBattleScRsp {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetCurBattleInfoCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetCurBattleInfoScRsp {
    #[prost(uint32, tag = "15")]
    pub hmijfmdbbeo: u32,
    #[prost(message, optional, tag = "11")]
    pub ojlhdmbagac: ::core::option::Option<Bihglhmefjo>,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(enumeration = "BattleEndStatus", tag = "6")]
    pub last_end_status: i32,
    #[prost(message, optional, tag = "7")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SyncClientResVersionCsReq {
    #[prost(uint32, tag = "11")]
    pub res_version: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SyncClientResVersionScRsp {
    #[prost(uint32, tag = "6")]
    pub res_version: u32,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bcjeogcgfdh {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fdopelbealb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ciaincoclgf {
    #[prost(bool, tag = "8")]
    pub cdgnljjpicb: bool,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Facmphjefba {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Idhkcnkapal {
    #[prost(bool, tag = "6")]
    pub hgnofcljbmb: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fbnokfehlpn {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ndcpidkjoph {
    #[prost(uint32, repeated, tag = "14")]
    pub oendklpihni: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(uint32, tag = "11")]
    pub cjpclddiddl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ihkkeamggim {
    #[prost(uint32, repeated, tag = "8")]
    pub oendklpihni: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "15")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "1")]
    pub cjpclddiddl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Onfccfldjfe {
    #[prost(uint32, tag = "10")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ijajblgiioh {
    #[prost(message, optional, tag = "7")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
    #[prost(uint32, tag = "13")]
    pub id: u32,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mkkhkdaookp {
    #[prost(uint32, tag = "9")]
    pub level: u32,
    #[prost(enumeration = "Hepghpgngii", tag = "4")]
    pub cceofkcgnnf: i32,
    #[prost(uint64, tag = "13")]
    pub lbghpioojce: u64,
    #[prost(uint64, tag = "2")]
    pub lmeppgohlga: u64,
    #[prost(uint32, tag = "7")]
    pub exp: u32,
    #[prost(uint64, tag = "8")]
    pub bcjbaeijbin: u64,
    #[prost(uint64, tag = "6")]
    pub lpgeodfepkc: u64,
    #[prost(uint64, tag = "12")]
    pub hnnlaaecafh: u64,
    #[prost(uint64, tag = "11")]
    pub lkmaclblfaf: u64,
    #[prost(uint64, tag = "10")]
    pub fheghadonco: u64,
    #[prost(uint32, tag = "1")]
    pub kkbocjmikia: u32,
    #[prost(uint32, tag = "15")]
    pub hdiaeaadogk: u32,
    #[prost(uint64, tag = "3")]
    pub hekdfoanipl: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oiklamipjdo {
    #[prost(enumeration = "Cplhlmcicgp", tag = "10")]
    pub ipnhjoomhdm: i32,
    #[prost(uint32, tag = "6")]
    pub jpghfnpcdjg: u32,
    #[prost(uint32, tag = "11")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pkjgcmkochp {
    #[prost(message, optional, tag = "5")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ifggimhheig {
    #[prost(uint32, tag = "10")]
    pub jaldbbgpfne: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mdjacnpamjk {
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OptionalReward {
    #[prost(uint32, tag = "14")]
    pub optional_reward_id: u32,
    #[prost(uint32, tag = "5")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Addbgahdfnl {
    #[prost(message, repeated, tag = "9")]
    pub anhonmhniik: ::prost::alloc::vec::Vec<OptionalReward>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gdhbnfpfaog {
    #[prost(message, optional, tag = "14")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dnlffphplbe {
    #[prost(enumeration = "AvatarType", tag = "10")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "11")]
    pub ckondfhadld: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jfakjilflci {
    #[prost(uint32, tag = "5")]
    pub dlhmehgliad: u32,
    #[prost(uint32, tag = "14")]
    pub ipaopmgjcfl: u32,
    #[prost(uint32, repeated, tag = "12")]
    pub avatar_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "3")]
    pub meekkgnihle: u32,
    #[prost(bool, tag = "4")]
    pub ocgoljdaphe: bool,
    #[prost(uint32, tag = "6")]
    pub jkpldbgoblb: u32,
    #[prost(uint32, repeated, tag = "11")]
    pub bhpmbddcadf: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "15")]
    pub mdbafeodpgg: u32,
    #[prost(message, repeated, tag = "13")]
    pub iccpdpcbeeb: ::prost::alloc::vec::Vec<Dnlffphplbe>,
    #[prost(uint32, tag = "7")]
    pub ihmpmdicmkk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lkcbeobecca {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Napjhgnjjaa {
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "9")]
    pub aaohdgdimml: ::prost::alloc::vec::Vec<Jfakjilflci>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eeimjhfdkgn {
    #[prost(uint32, tag = "3")]
    pub ckondfhadld: u32,
    #[prost(enumeration = "AvatarType", tag = "12")]
    pub avatar_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mncbmaefmkl {
    #[prost(uint32, tag = "6")]
    pub meekkgnihle: u32,
    #[prost(message, repeated, tag = "9")]
    pub iccpdpcbeeb: ::prost::alloc::vec::Vec<Eeimjhfdkgn>,
    #[prost(uint32, repeated, tag = "2")]
    pub avatar_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dfnjcodmjfk {
    #[prost(message, optional, tag = "10")]
    pub pakaglmionh: ::core::option::Option<Jfakjilflci>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Megfjkbahdb {
    #[prost(uint32, tag = "8")]
    pub dlhmehgliad: u32,
    #[prost(uint32, tag = "5")]
    pub meekkgnihle: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mkcglbfcbkb {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(message, optional, tag = "11")]
    pub pakaglmionh: ::core::option::Option<Jfakjilflci>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Phhfmcfnnhg {
    #[prost(uint32, tag = "13")]
    pub meekkgnihle: u32,
    #[prost(message, repeated, tag = "6")]
    pub iccpdpcbeeb: ::prost::alloc::vec::Vec<Eeimjhfdkgn>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ldkeinfcdhj {
    #[prost(message, optional, tag = "14")]
    pub pakaglmionh: ::core::option::Option<Jfakjilflci>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dgmebfgdhkg {
    #[prost(uint32, tag = "2")]
    pub meekkgnihle: u32,
    #[prost(uint32, tag = "1")]
    pub jpljapikpip: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dpanlomknlg {
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(message, optional, tag = "6")]
    pub pakaglmionh: ::core::option::Option<Jfakjilflci>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dmgomlablop {
    #[prost(uint32, tag = "9")]
    pub meekkgnihle: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nehadhkjoil {
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(message, optional, tag = "10")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
    #[prost(uint32, tag = "8")]
    pub meekkgnihle: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Llelfcejpka {
    #[prost(uint32, tag = "11")]
    pub meekkgnihle: u32,
    #[prost(bool, tag = "9")]
    pub menmpielgpl: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jlhmfhmllnf {
    #[prost(message, optional, tag = "9")]
    pub pakaglmionh: ::core::option::Option<Jfakjilflci>,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dbbdfdmppjn {
    #[prost(uint32, tag = "3")]
    pub ipaopmgjcfl: u32,
    #[prost(uint32, tag = "12")]
    pub meekkgnihle: u32,
    #[prost(message, optional, tag = "13")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(bool, tag = "7")]
    pub bccnneknbdm: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Elmflnfemek {
    #[prost(message, optional, tag = "4")]
    pub pakaglmionh: ::core::option::Option<Jfakjilflci>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ikffpjkogkb {
    #[prost(uint32, tag = "8")]
    pub inpelkijhpa: u32,
    #[prost(uint32, tag = "13")]
    pub kiijmkkfmkj: u32,
    #[prost(uint32, tag = "1")]
    pub meekkgnihle: u32,
    #[prost(uint32, tag = "12")]
    pub lifoeefffah: u32,
    #[prost(uint32, tag = "7")]
    pub jfjcjmpbhgk: u32,
    #[prost(uint32, tag = "5")]
    pub gehgegofddm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fllecngjkki {
    #[prost(uint32, tag = "4")]
    pub group_id: u32,
    #[prost(uint64, tag = "11")]
    pub eddnghbbgoc: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mefmlgocbjf {
    #[prost(uint32, tag = "8")]
    pub level: u32,
    #[prost(uint32, tag = "12")]
    pub obofaekinfk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cdckpbebldb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cbhjhmjgpaf {
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "11")]
    pub aaohdgdimml: ::prost::alloc::vec::Vec<Ikffpjkogkb>,
    #[prost(uint32, tag = "12")]
    pub bajofclohfk: u32,
    #[prost(message, repeated, tag = "7")]
    pub idikdekmpim: ::prost::alloc::vec::Vec<Fllecngjkki>,
    #[prost(message, repeated, tag = "13")]
    pub efbnhaahogm: ::prost::alloc::vec::Vec<Mefmlgocbjf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hdldgepfmgl {
    #[prost(uint32, tag = "9")]
    pub gppeglnngnj: u32,
    #[prost(uint32, tag = "8")]
    pub akeomnpojce: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Donknppomjc {
    #[prost(message, optional, tag = "14")]
    pub ggiahbjhkge: ::core::option::Option<Hdldgepfmgl>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jmfdlcddfhj {
    #[prost(message, optional, tag = "9")]
    pub jjbghclhjml: ::core::option::Option<Donknppomjc>,
    #[prost(uint32, tag = "6")]
    pub meekkgnihle: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ldanlmnnigh {
    #[prost(message, optional, tag = "2")]
    pub scene: ::core::option::Option<SceneInfo>,
    #[prost(message, optional, tag = "12")]
    pub lineup: ::core::option::Option<LineupInfo>,
    #[prost(message, optional, tag = "1")]
    pub ofljdjolifn: ::core::option::Option<Kjnmpbligpn>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gbemnllhiaj {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ilmjncopfeo {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Khanlfobond {
    #[prost(uint32, repeated, tag = "4")]
    pub hgjofdbenlk: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "7")]
    pub bajofclohfk: u32,
    #[prost(bool, tag = "5")]
    pub bccnneknbdm: bool,
    #[prost(uint32, tag = "3")]
    pub meekkgnihle: u32,
    #[prost(message, optional, tag = "14")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "1")]
    pub inpelkijhpa: u32,
    #[prost(uint32, tag = "12")]
    pub lifoeefffah: u32,
    #[prost(message, optional, tag = "6")]
    pub dfpppoippkk: ::core::option::Option<Mefmlgocbjf>,
    #[prost(uint32, tag = "10")]
    pub kgjkhjgnmmb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Djakmmlenpd {
    #[prost(uint32, tag = "6")]
    pub abmiemnbhef: u32,
    #[prost(uint32, tag = "12")]
    pub monster_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oaeahlgaajm {
    #[prost(uint32, repeated, tag = "1")]
    pub buff_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bkighgalpnp {
    #[prost(message, optional, tag = "5")]
    pub jbamgoljjbe: ::core::option::Option<Oaeahlgaajm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kjnmpbligpn {
    #[prost(message, repeated, tag = "5")]
    pub fmlefkknikp: ::prost::alloc::vec::Vec<Djakmmlenpd>,
    #[prost(uint32, tag = "3")]
    pub jfjcjmpbhgk: u32,
    #[prost(uint32, tag = "13")]
    pub knklpefmhid: u32,
    #[prost(uint32, tag = "14")]
    pub meekkgnihle: u32,
    #[prost(message, optional, tag = "9")]
    pub jjbghclhjml: ::core::option::Option<Bkighgalpnp>,
    #[prost(uint32, tag = "4")]
    pub lifoeefffah: u32,
    #[prost(enumeration = "ChallengeStatus", tag = "6")]
    pub status: i32,
    #[prost(enumeration = "ExtraLineupType", tag = "12")]
    pub extra_lineup_type: i32,
    #[prost(uint32, tag = "2")]
    pub fpadcobiddj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gihleecfbjg {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lflkcjjlplo {
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(message, optional, tag = "11")]
    pub ofljdjolifn: ::core::option::Option<Kjnmpbligpn>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nipmbkfaoaa {
    #[prost(enumeration = "ExtraLineupType", tag = "3")]
    pub extra_lineup_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jhbmjnmdglb {
    #[prost(uint32, tag = "6")]
    pub group_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dfadkngphga {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(uint32, tag = "6")]
    pub group_id: u32,
    #[prost(message, repeated, tag = "7")]
    pub lddjaokappo: ::prost::alloc::vec::Vec<Ngbdgfkebom>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ngbdgfkebom {
    #[prost(uint32, tag = "9")]
    pub igpbbcgnoee: u32,
    #[prost(message, optional, tag = "15")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nfpadiblelk {
    #[prost(uint32, tag = "5")]
    pub gehgegofddm: u32,
    #[prost(message, optional, tag = "4")]
    pub pmjjmnipcnf: ::core::option::Option<Ombfkkcddbi>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cgonejnkeeh {
    #[prost(message, optional, tag = "9")]
    pub pmjjmnipcnf: ::core::option::Option<Fjpmngbooac>,
    #[prost(uint32, tag = "13")]
    pub gehgegofddm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ombfkkcddbi {
    #[prost(uint32, tag = "11")]
    pub opiljabgpip: u32,
    #[prost(uint32, tag = "4")]
    pub level: u32,
    #[prost(uint32, tag = "6")]
    pub fpadcobiddj: u32,
    #[prost(message, repeated, tag = "3")]
    pub lineup_list: ::prost::alloc::vec::Vec<Alnhjbdnhob>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fjpmngbooac {
    #[prost(uint32, tag = "10")]
    pub akeomnpojce: u32,
    #[prost(message, repeated, tag = "6")]
    pub lineup_list: ::prost::alloc::vec::Vec<Alnhjbdnhob>,
    #[prost(uint32, tag = "3")]
    pub gppeglnngnj: u32,
    #[prost(uint32, tag = "4")]
    pub opiljabgpip: u32,
    #[prost(uint32, tag = "11")]
    pub jfjcjmpbhgk: u32,
    #[prost(uint32, tag = "14")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Alnhjbdnhob {
    #[prost(message, repeated, tag = "8")]
    pub avatar_list: ::prost::alloc::vec::Vec<Eejihdkknng>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eejihdkknng {
    #[prost(uint32, tag = "15")]
    pub level: u32,
    #[prost(uint32, tag = "6")]
    pub id: u32,
    #[prost(enumeration = "AvatarType", tag = "4")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "1")]
    pub index: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hnfpiffojjm {
    #[prost(uint32, tag = "6")]
    pub group_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ldoohgcnkkm {
    #[prost(uint32, tag = "13")]
    pub group_id: u32,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, optional, tag = "11")]
    pub fncmegnmikb: ::core::option::Option<Nfpadiblelk>,
    #[prost(message, optional, tag = "8")]
    pub ilpoicglogc: ::core::option::Option<Cgonejnkeeh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bgfjcbbfiek {
    #[prost(uint32, repeated, tag = "4")]
    pub dikppcijhjp: ::prost::alloc::vec::Vec<u32>,
    #[prost(enumeration = "ChatType", tag = "8")]
    pub pofomobijdg: i32,
    #[prost(enumeration = "MsgType", tag = "9")]
    pub bdjoneohhpj: i32,
    #[prost(uint32, tag = "7")]
    pub kjdhmhgjdmc: u32,
    #[prost(string, tag = "2")]
    pub moiplammfad: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jhickbdnnii {
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(uint64, tag = "4")]
    pub end_time: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bpifmdladdn {
    #[prost(enumeration = "MsgType", tag = "7")]
    pub bdjoneohhpj: i32,
    #[prost(uint32, tag = "9")]
    pub nokipdbhglc: u32,
    #[prost(uint64, tag = "1")]
    pub phhhfhobhmk: u64,
    #[prost(uint32, tag = "11")]
    pub kjdhmhgjdmc: u32,
    #[prost(string, tag = "15")]
    pub fbelgjfhbkh: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kifdjbodlcc {
    #[prost(uint32, tag = "3")]
    pub djefnoaonkc: u32,
    #[prost(uint32, tag = "2")]
    pub kjdhmhgjdmc: u32,
    #[prost(enumeration = "MsgType", tag = "15")]
    pub bdjoneohhpj: i32,
    #[prost(uint32, tag = "11")]
    pub aljhmlmnmhp: u32,
    #[prost(string, tag = "9")]
    pub moiplammfad: ::prost::alloc::string::String,
    #[prost(enumeration = "ChatType", tag = "6")]
    pub pofomobijdg: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pnbahcnagja {
    #[prost(uint32, repeated, tag = "6")]
    pub dhjbofmdiaf: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Komknbijgpi {
    #[prost(uint32, tag = "5")]
    pub fjbkleaflam: u32,
    #[prost(uint32, tag = "9")]
    pub oligkfnjkma: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ooibcglpnac {
    #[prost(message, repeated, tag = "8")]
    pub pgofeopnpbm: ::prost::alloc::vec::Vec<Bpifmdladdn>,
    #[prost(uint32, tag = "13")]
    pub oligkfnjkma: u32,
    #[prost(uint32, tag = "9")]
    pub fjbkleaflam: u32,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mnilhfgngda {
    #[prost(int64, tag = "2")]
    pub hpblpodjjjd: i64,
    #[prost(uint32, tag = "8")]
    pub fjbkleaflam: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mdjgcdjindh {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fkcnlijbjla {
    #[prost(message, repeated, tag = "4")]
    pub lhkpapgcaik: ::prost::alloc::vec::Vec<Mnilhfgngda>,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Okomaeoiefd {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kpajkoihebk {
    #[prost(uint32, repeated, tag = "10")]
    pub hncgpigjhbc: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ibkmdebncfi {
    #[prost(bool, tag = "11")]
    pub mlcmbgbbkfk: bool,
    #[prost(uint32, tag = "15")]
    pub kjdhmhgjdmc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ielhaccclbn {
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(bool, tag = "11")]
    pub mlcmbgbbkfk: bool,
    #[prost(uint32, tag = "12")]
    pub kjdhmhgjdmc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bdiiohojbii {
    #[prost(uint32, repeated, tag = "2")]
    pub ekeiiineffb: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mdneebdmanh {
    #[prost(uint32, repeated, tag = "9")]
    pub ekeiiineffb: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lghfcpjnpji {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ecplljckfcg {
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "11")]
    pub dhjbofmdiaf: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Akfgfndnpcm {
    #[prost(message, optional, tag = "11")]
    pub nghlebnllpd: ::core::option::Option<ItemCostData>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nldkfhipphm {
    #[prost(message, optional, tag = "5")]
    pub scene: ::core::option::Option<SceneInfo>,
    #[prost(message, optional, tag = "7")]
    pub lineup: ::core::option::Option<LineupInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cgnjmipibld {
    #[prost(uint32, repeated, tag = "12")]
    pub knkngagfljm: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "2")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kdolhdnkooc {
    #[prost(message, repeated, tag = "13")]
    pub hiogkbeciob: ::prost::alloc::vec::Vec<Cgnjmipibld>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ehkfanbfigf {
    #[prost(enumeration = "Moogohdmihl", tag = "7")]
    pub odchaiajagg: i32,
    #[prost(uint32, tag = "11")]
    pub lohkkoiedkn: u32,
    #[prost(enumeration = "Kogkmofkdkh", tag = "1")]
    pub dngjloegiep: i32,
    #[prost(uint32, tag = "12")]
    pub pnaaoaffcmf: u32,
    #[prost(bool, tag = "10")]
    pub caeglfkkioi: bool,
    #[prost(message, optional, tag = "1060")]
    pub plbmkoajkpn: ::core::option::Option<Daneehmkdkn>,
    #[prost(message, optional, tag = "1603")]
    pub malmpjcagpi: ::core::option::Option<Pifedfgbmfj>,
    #[prost(uint32, tag = "5")]
    pub fnbmfcmofmn: u32,
    #[prost(uint32, tag = "2")]
    pub goohcellabb: u32,
    #[prost(uint32, tag = "9")]
    pub bjmijkidigl: u32,
    #[prost(uint32, tag = "4")]
    pub gmiikpalhcl: u32,
    #[prost(uint32, repeated, tag = "1151")]
    pub cgdclggfmjk: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub egdhkffgngm: u32,
    #[prost(message, optional, tag = "81")]
    pub glcaagkdpee: ::core::option::Option<Cfgilhckeci>,
    #[prost(bool, tag = "315")]
    pub ohihgamopoe: bool,
    #[prost(uint32, tag = "8")]
    pub adbifgehgop: u32,
    #[prost(int32, tag = "700")]
    pub gcomnnlicel: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ionmogilkfj {
    #[prost(uint32, tag = "15")]
    pub pdjboniohii: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Emdmljakhpg {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(uint32, tag = "2")]
    pub negomknkgic: u32,
    #[prost(message, optional, tag = "10")]
    pub jfmkjgdlgjg: ::core::option::Option<Ehkfanbfigf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jnggjhncmhb {
    #[prost(uint32, tag = "14")]
    pub pkbdlfomfkh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eibmmjmhlml {
    #[prost(uint32, tag = "7")]
    pub pkbdlfomfkh: u32,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cpamojendkc {
    #[prost(uint32, tag = "13")]
    pub monster_id: u32,
    #[prost(uint32, tag = "11")]
    pub olpbfkcodap: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Imiljgcjggm {
    #[prost(uint32, tag = "13")]
    pub dollclcflli: u32,
    #[prost(bool, tag = "8")]
    pub nehdkecgphp: bool,
    #[prost(message, repeated, tag = "6")]
    pub olfnmeknaph: ::prost::alloc::vec::Vec<Cpamojendkc>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nlgoaohkhpa {
    #[prost(uint32, repeated, tag = "4")]
    pub dhdokjaeicl: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "9")]
    pub mdldmaccagm: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Phlnbcbdhbo {
    #[prost(message, optional, tag = "5")]
    pub lfbagdmmbak: ::core::option::Option<Nlgoaohkhpa>,
    #[prost(message, optional, tag = "6")]
    pub ckdehakhado: ::core::option::Option<Imiljgcjggm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pidojfmlodb {
    #[prost(message, optional, tag = "2")]
    pub ckdehakhado: ::core::option::Option<Imiljgcjggm>,
    #[prost(message, optional, tag = "14")]
    pub lfbagdmmbak: ::core::option::Option<Nlgoaohkhpa>,
    #[prost(message, optional, tag = "12")]
    pub lmjmkfajcec: ::core::option::Option<Phlnbcbdhbo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fegohpmjhio {
    #[prost(uint32, tag = "15")]
    pub jldlemnbppe: u32,
    #[prost(uint32, tag = "14")]
    pub afnfcbkkbom: u32,
    #[prost(bool, tag = "10")]
    pub kjmdbckgfam: bool,
    #[prost(enumeration = "Finaeombomp", tag = "7")]
    pub joajkgafnoc: i32,
    #[prost(bool, tag = "1")]
    pub gppnlcegnaa: bool,
    #[prost(message, optional, tag = "6")]
    pub jjbghclhjml: ::core::option::Option<Pidojfmlodb>,
    #[prost(uint32, tag = "12")]
    pub ncppildajae: u32,
    #[prost(uint32, tag = "2")]
    pub dkifiefpobb: u32,
    #[prost(uint32, tag = "5")]
    pub id: u32,
    #[prost(uint32, tag = "13")]
    pub aecgcapllon: u32,
    #[prost(enumeration = "Cakniagnigg", tag = "11")]
    pub ciojcdfeejd: i32,
    #[prost(uint32, repeated, tag = "8")]
    pub oolnibpfjnb: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fkmhheofflm {
    #[prost(uint32, tag = "14")]
    pub glnpllabhfp: u32,
    #[prost(message, repeated, tag = "11")]
    pub dkpdnfafhpi: ::prost::alloc::vec::Vec<Fegohpmjhio>,
    #[prost(uint32, tag = "6")]
    pub aiinidkoand: u32,
    #[prost(uint32, tag = "4")]
    pub chdgfhkanod: u32,
    #[prost(uint32, tag = "12")]
    pub pinjcjjibnj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bmmijpokamd {
    #[prost(uint32, tag = "1")]
    pub aecgcapllon: u32,
    #[prost(uint32, tag = "12")]
    pub pkbdlfomfkh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Confadlhpln {
    #[prost(message, optional, tag = "15")]
    pub idmnmapahom: ::core::option::Option<Daneehmkdkn>,
    #[prost(uint32, tag = "7")]
    pub ekieijdggia: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ojoeldllopk {
    #[prost(uint32, repeated, tag = "6")]
    pub jkkdcgleakc: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "4")]
    pub dokmjnihnoo: ::core::option::Option<Confadlhpln>,
    #[prost(uint32, tag = "9")]
    pub aedgnmndpcj: u32,
    #[prost(uint32, tag = "7")]
    pub dggadnejpgi: u32,
    #[prost(message, optional, tag = "15")]
    pub jfncaplkddd: ::core::option::Option<Fkmhheofflm>,
    #[prost(message, repeated, tag = "12")]
    pub kejldfaeeck: ::prost::alloc::vec::Vec<Bmmijpokamd>,
    #[prost(enumeration = "Finaeombomp", tag = "8")]
    pub lldencmihoc: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Beebagafccj {
    #[prost(message, optional, tag = "8")]
    pub faapakmnfoi: ::core::option::Option<Ojoeldllopk>,
    #[prost(uint32, tag = "5")]
    pub cbnpaonepkc: u32,
    #[prost(uint32, tag = "1")]
    pub jdgielljojd: u32,
    #[prost(uint32, tag = "4")]
    pub id: u32,
    #[prost(uint32, repeated, tag = "11")]
    pub nenkkbjejfl: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "3")]
    pub hhicecabpkl: ::prost::alloc::vec::Vec<u32>,
    #[prost(int32, tag = "2")]
    pub lmakggbnoii: i32,
    #[prost(int32, tag = "15")]
    pub jepagkihefk: i32,
    #[prost(uint32, tag = "10")]
    pub ebjhhhhfiak: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ocmalkobfel {
    #[prost(uint32, tag = "9")]
    pub cjpclddiddl: u32,
    #[prost(uint32, tag = "2")]
    pub mpkacbpnmpn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pcpjkddddbf {
    #[prost(message, repeated, tag = "13")]
    pub lobghgfemep: ::prost::alloc::vec::Vec<Ocmalkobfel>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fefaifljmhg {
    #[prost(int32, tag = "11")]
    pub hncgpmcbnlh: i32,
    #[prost(message, optional, tag = "4")]
    pub idmnmapahom: ::core::option::Option<Daneehmkdkn>,
    #[prost(message, optional, tag = "13")]
    pub mnplhnabbpb: ::core::option::Option<Pcpjkddddbf>,
    #[prost(uint32, tag = "10")]
    pub ffoomfhaooa: u32,
    #[prost(uint32, repeated, tag = "1")]
    pub pipmchkoncg: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kmjlmkhpagj {
    #[prost(uint32, tag = "5")]
    pub gkcleolpljh: u32,
    #[prost(uint32, tag = "6")]
    pub ckondfhadld: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aadggenggll {
    #[prost(message, repeated, tag = "5")]
    pub njmgdkcmnhn: ::prost::alloc::vec::Vec<Kmjlmkhpagj>,
    #[prost(message, optional, tag = "3")]
    pub onpfehocppn: ::core::option::Option<Akfgfndnpcm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Clnflhfjmhb {
    #[prost(uint32, repeated, tag = "12")]
    pub eglcbnjompd: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "15")]
    pub jocekhkjjhl: bool,
    #[prost(uint32, tag = "3")]
    pub bilkfnalgla: u32,
    #[prost(uint32, tag = "10")]
    pub jneefffoigf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oajdeacgcbj {
    #[prost(int32, tag = "6")]
    pub gfemjdkppne: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jeokmeginbm {
    #[prost(uint32, repeated, tag = "4")]
    pub eodnkkeeoga: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fhnndcjemjg {
    #[prost(message, optional, tag = "1476")]
    pub geoijkdcioi: ::core::option::Option<Jeokmeginbm>,
    #[prost(message, optional, tag = "12")]
    pub flbeikgmkga: ::core::option::Option<Iggepapjffh>,
    #[prost(message, optional, tag = "3")]
    pub khpdleamfpn: ::core::option::Option<Beebagafccj>,
    #[prost(message, optional, tag = "9")]
    pub kboghocciib: ::core::option::Option<Aadggenggll>,
    #[prost(message, optional, tag = "1")]
    pub pdepkbbpgem: ::core::option::Option<Oajdeacgcbj>,
    #[prost(message, optional, tag = "8")]
    pub dhbfppkhghf: ::core::option::Option<Fefaifljmhg>,
    #[prost(message, optional, tag = "2")]
    pub fnaeboidadn: ::core::option::Option<Dgnnoddkkfa>,
    #[prost(message, optional, tag = "13")]
    pub maceecbfmfi: ::core::option::Option<Gepglobcikm>,
    #[prost(message, repeated, tag = "4")]
    pub jnimlohdmlo: ::prost::alloc::vec::Vec<Mmgmnbonana>,
    #[prost(message, optional, tag = "10")]
    pub fpfleanbjlo: ::core::option::Option<Lcgionaidjn>,
    #[prost(message, optional, tag = "15")]
    pub jfmkjgdlgjg: ::core::option::Option<Ehkfanbfigf>,
    #[prost(message, optional, tag = "14")]
    pub ccdamnhkfoe: ::core::option::Option<Gmmfeddbcfk>,
    #[prost(uint32, tag = "6")]
    pub maaakbdmpgb: u32,
    #[prost(message, optional, tag = "5")]
    pub ggiahbjhkge: ::core::option::Option<Clnflhfjmhb>,
    #[prost(message, optional, tag = "11")]
    pub cfkepbadeco: ::core::option::Option<Hahmakeodgg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nbmanpfgbgh {
    #[prost(uint32, repeated, tag = "5")]
    pub hhicecabpkl: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "8")]
    pub mnplhnabbpb: ::core::option::Option<Pcpjkddddbf>,
    #[prost(message, optional, tag = "14")]
    pub geoijkdcioi: ::core::option::Option<Kkneodnnmhm>,
    #[prost(uint32, repeated, tag = "3")]
    pub nenkkbjejfl: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "1")]
    pub fndbnajbnnc: ::core::option::Option<Bjdgcdijloe>,
    #[prost(message, optional, tag = "6")]
    pub maceecbfmfi: ::core::option::Option<Gepglobcikm>,
    #[prost(message, optional, tag = "15")]
    pub hgpklojihdi: ::core::option::Option<Iehnikilajp>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Peehmmledmp {
    #[prost(uint32, tag = "9")]
    pub maaakbdmpgb: u32,
    #[prost(message, repeated, tag = "14")]
    pub jnimlohdmlo: ::prost::alloc::vec::Vec<Mmgmnbonana>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Beimelkbjip {
    #[prost(message, optional, tag = "13")]
    pub mnplhnabbpb: ::core::option::Option<Pcpjkddddbf>,
    #[prost(message, optional, tag = "7")]
    pub hgpklojihdi: ::core::option::Option<Iehnikilajp>,
    #[prost(message, optional, tag = "6")]
    pub geoijkdcioi: ::core::option::Option<Kkneodnnmhm>,
    #[prost(uint32, repeated, tag = "8")]
    pub hhicecabpkl: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "14")]
    pub nenkkbjejfl: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "5")]
    pub fndbnajbnnc: ::core::option::Option<Bjdgcdijloe>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nlbojmdefii {
    #[prost(uint32, tag = "1840")]
    pub aipggiikgfb: u32,
    #[prost(message, optional, tag = "6")]
    pub hiilellnjfn: ::core::option::Option<LineupInfo>,
    #[prost(uint32, tag = "5")]
    pub fppadianmpm: u32,
    #[prost(uint32, tag = "1022")]
    pub jjidmmmacke: u32,
    #[prost(message, optional, tag = "8")]
    pub ncgminanpdh: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "603")]
    pub jfjcjmpbhgk: u32,
    #[prost(uint32, tag = "13")]
    pub mppokeidaha: u32,
    #[prost(uint32, tag = "1450")]
    pub aengdlipfdk: u32,
    #[prost(uint32, repeated, tag = "4")]
    pub iijdjgjjclf: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "1088")]
    pub fpfleanbjlo: ::core::option::Option<Lcgionaidjn>,
    #[prost(enumeration = "Bkohkpbgpjh", tag = "9")]
    pub gnfpjdihhme: i32,
    #[prost(message, optional, tag = "2")]
    pub flbeikgmkga: ::core::option::Option<Lnfckhoafhk>,
    #[prost(bool, tag = "11")]
    pub pcnpbfjaihl: bool,
    #[prost(uint32, tag = "1742")]
    pub maaakbdmpgb: u32,
    #[prost(message, optional, tag = "12")]
    pub ccdamnhkfoe: ::core::option::Option<Pkgndclahhk>,
    #[prost(uint32, tag = "15")]
    pub bhmajalhphp: u32,
    #[prost(uint32, tag = "1")]
    pub icmiajmbmap: u32,
    #[prost(uint32, tag = "14")]
    pub dndohhkogmn: u32,
    #[prost(uint32, tag = "7")]
    pub dpmciakidpa: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Agiabikdghi {
    #[prost(uint32, tag = "8")]
    pub mdgamigioko: u32,
    #[prost(message, repeated, tag = "1")]
    pub dkpdnfafhpi: ::prost::alloc::vec::Vec<Fegohpmjhio>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bglbagnedbn {
    #[prost(uint32, tag = "3")]
    pub imlnehpfdgi: u32,
    #[prost(uint32, tag = "9")]
    pub mppokeidaha: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nmomemmfjnf {
    #[prost(uint32, tag = "2")]
    pub bilkfnalgla: u32,
    #[prost(uint32, tag = "15")]
    pub agijapkklnn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Efbcaklfame {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Apemkpacgef {
    #[prost(message, optional, tag = "10")]
    pub pgjhbdmdfhf: ::core::option::Option<Nlbojmdefii>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(message, optional, tag = "13")]
    pub haaegbncmed: ::core::option::Option<Peehmmledmp>,
    #[prost(message, optional, tag = "4")]
    pub poehbbgegkm: ::core::option::Option<Nbmanpfgbgh>,
    #[prost(message, optional, tag = "12")]
    pub eafohbgekig: ::core::option::Option<Beimelkbjip>,
    #[prost(message, optional, tag = "1")]
    pub napnbdcoafp: ::core::option::Option<Fhnndcjemjg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kjngodjmmok {
    #[prost(uint32, tag = "8")]
    pub iaeonkohpbh: u32,
    #[prost(uint32, tag = "10")]
    pub pkbdlfomfkh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lanodioeilp {
    #[prost(message, optional, tag = "1")]
    pub napnbdcoafp: ::core::option::Option<Fhnndcjemjg>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(message, optional, tag = "4")]
    pub haaegbncmed: ::core::option::Option<Peehmmledmp>,
    #[prost(uint32, tag = "3")]
    pub pkbdlfomfkh: u32,
    #[prost(message, optional, tag = "15")]
    pub jjbghclhjml: ::core::option::Option<Nldkfhipphm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lbefcoklfkk {
    #[prost(uint32, tag = "9")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Afdcgepneig {
    #[prost(message, optional, tag = "11")]
    pub jjbghclhjml: ::core::option::Option<Nldkfhipphm>,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(message, optional, tag = "7")]
    pub haaegbncmed: ::core::option::Option<Peehmmledmp>,
    #[prost(uint32, tag = "1")]
    pub id: u32,
    #[prost(message, optional, tag = "2")]
    pub napnbdcoafp: ::core::option::Option<Fhnndcjemjg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oigagdbedba {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oechmjoiicm {
    #[prost(message, optional, tag = "14")]
    pub poehbbgegkm: ::core::option::Option<Nbmanpfgbgh>,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(message, optional, tag = "5")]
    pub dhbfppkhghf: ::core::option::Option<Fefaifljmhg>,
    #[prost(message, optional, tag = "12")]
    pub jjbghclhjml: ::core::option::Option<Nldkfhipphm>,
    #[prost(message, optional, tag = "3")]
    pub eafohbgekig: ::core::option::Option<Beimelkbjip>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cchoffgoacd {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bckoglppicg {
    #[prost(message, optional, tag = "13")]
    pub pgjhbdmdfhf: ::core::option::Option<Nlbojmdefii>,
    #[prost(message, optional, tag = "10")]
    pub poehbbgegkm: ::core::option::Option<Nbmanpfgbgh>,
    #[prost(message, optional, tag = "2")]
    pub eafohbgekig: ::core::option::Option<Beimelkbjip>,
    #[prost(message, optional, tag = "14")]
    pub jjbghclhjml: ::core::option::Option<Nldkfhipphm>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(message, optional, tag = "15")]
    pub dhbfppkhghf: ::core::option::Option<Fefaifljmhg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kafgfhlmjga {
    #[prost(uint32, repeated, tag = "13")]
    pub hcnghgehhpj: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "12")]
    pub mpkacbpnmpn: u32,
    #[prost(uint32, repeated, tag = "7")]
    pub base_avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "8")]
    pub id: u32,
    #[prost(uint32, repeated, tag = "6")]
    pub ppmpgogolif: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "2")]
    pub jfigbhlegdg: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "10")]
    pub milhldhlpeh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mjngjjddjla {
    #[prost(message, optional, tag = "14")]
    pub jjbghclhjml: ::core::option::Option<Nldkfhipphm>,
    #[prost(message, optional, tag = "13")]
    pub dbdgehfffem: ::core::option::Option<Agiabikdghi>,
    #[prost(message, optional, tag = "3")]
    pub haaegbncmed: ::core::option::Option<Peehmmledmp>,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, optional, tag = "1")]
    pub napnbdcoafp: ::core::option::Option<Fhnndcjemjg>,
    #[prost(message, optional, tag = "15")]
    pub scene: ::core::option::Option<SceneInfo>,
    #[prost(message, optional, tag = "8")]
    pub lineup: ::core::option::Option<LineupInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hbcbmcekakg {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ejphbaiappl {
    #[prost(message, optional, tag = "2")]
    pub napnbdcoafp: ::core::option::Option<Pcpjkddddbf>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eegljffkhnh {
    #[prost(message, optional, tag = "6")]
    pub napnbdcoafp: ::core::option::Option<Ocmalkobfel>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hfjmcpjmjbd {
    #[prost(uint32, tag = "8")]
    pub pkbdlfomfkh: u32,
    #[prost(uint32, tag = "11")]
    pub iaeonkohpbh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Elnahemlidf {
    #[prost(uint32, tag = "3")]
    pub iaeonkohpbh: u32,
    #[prost(uint32, tag = "12")]
    pub pkbdlfomfkh: u32,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, optional, tag = "11")]
    pub lkdpifpcpco: ::core::option::Option<Mhfcaolcahc>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hajhkhjfppm {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ilpdgaopfgc {
    #[prost(message, optional, tag = "12")]
    pub napnbdcoafp: ::core::option::Option<Kdolhdnkooc>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Joihblbmfgl {
    #[prost(uint32, tag = "9")]
    pub ndbnlpmckna: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Glgckadgemg {
    #[prost(uint32, tag = "11")]
    pub ndbnlpmckna: u32,
    #[prost(message, optional, tag = "3")]
    pub kihoaflgphj: ::core::option::Option<Cgnjmipibld>,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kkdbcpiaala {
    #[prost(uint32, repeated, tag = "12")]
    pub iijdjgjjclf: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "14")]
    pub cbnpaonepkc: u32,
    #[prost(message, optional, tag = "13")]
    pub khpdleamfpn: ::core::option::Option<Beebagafccj>,
    #[prost(uint32, tag = "2")]
    pub bhmajalhphp: u32,
    #[prost(message, optional, tag = "1")]
    pub pgjhbdmdfhf: ::core::option::Option<Nlbojmdefii>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ddaloncjihi {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ipjncnokbcf {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(message, optional, tag = "9")]
    pub fpfclcfjpee: ::core::option::Option<Njeacjmcbgl>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jbbpkbfepih {
    #[prost(uint32, tag = "9")]
    pub giibaepcgan: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ocgkdflndcp {
    #[prost(message, optional, tag = "6")]
    pub fpfclcfjpee: ::core::option::Option<Njeacjmcbgl>,
    #[prost(bool, tag = "1")]
    pub bfknlcpgdeh: bool,
    #[prost(message, optional, tag = "12")]
    pub gnagbcdmnac: ::core::option::Option<Hcniamjdllp>,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bigljhgnpni {
    #[prost(uint32, repeated, tag = "14")]
    pub base_avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "10")]
    pub prop_entity_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Enmgdiiijha {
    #[prost(message, optional, tag = "6")]
    pub kboghocciib: ::core::option::Option<Aadggenggll>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "11")]
    pub base_avatar_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Babmcbadkoj {
    #[prost(uint32, repeated, tag = "8")]
    pub base_avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "11")]
    pub jmknpgakkhb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Djknkkccomm {
    #[prost(message, optional, tag = "1")]
    pub onpfehocppn: ::core::option::Option<Akfgfndnpcm>,
    #[prost(uint32, repeated, tag = "13")]
    pub base_avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ihhdahiaijp {
    #[prost(message, optional, tag = "10")]
    pub onpfehocppn: ::core::option::Option<Akfgfndnpcm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cpoebkjecbp {
    #[prost(message, optional, tag = "12")]
    pub fnaeboidadn: ::core::option::Option<Dgnnoddkkfa>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Acageokchob {
    #[prost(message, optional, tag = "13")]
    pub jfmkjgdlgjg: ::core::option::Option<Ehkfanbfigf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hgnpppadonl {
    #[prost(enumeration = "Pdgndfeojif", tag = "2")]
    pub bpodijpdnnk: i32,
    #[prost(enumeration = "Leieahhhhmi", tag = "3")]
    pub jdgielljojd: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Flaacjnlmjc {
    #[prost(uint32, repeated, tag = "12")]
    pub jkkdcgleakc: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "10")]
    pub jageglcnmjj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mhieehbhobc {
    #[prost(message, optional, tag = "14")]
    pub cdhgaemnmhb: ::core::option::Option<Fkmhheofflm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bfogiogkjdd {
    #[prost(uint32, tag = "9")]
    pub mpkacbpnmpn: u32,
    #[prost(int32, tag = "1")]
    pub hncgpmcbnlh: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hgfgfpaedka {
    #[prost(int32, tag = "5")]
    pub pgegoknlgde: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ffkckoceinb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ChessRogueSkipTeachingLevelScRsp {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, optional, tag = "9")]
    pub skip_reward_list: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gginfajfbjk {
    #[prost(uint32, repeated, tag = "14")]
    pub nenkkbjejfl: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dnbdofjhaeb {
    #[prost(uint32, tag = "9")]
    pub prop_entity_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oopdnmfnicm {
    #[prost(message, optional, tag = "2")]
    pub dbdgehfffem: ::core::option::Option<Agiabikdghi>,
    #[prost(message, optional, tag = "5")]
    pub haaegbncmed: ::core::option::Option<Peehmmledmp>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(message, optional, tag = "7")]
    pub jjbghclhjml: ::core::option::Option<Nldkfhipphm>,
    #[prost(message, optional, tag = "12")]
    pub mdgjahafkgj: ::core::option::Option<Fhnndcjemjg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lieohidphnk {
    #[prost(uint32, tag = "6")]
    pub pdjboniohii: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fbcinjkkdfm {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(message, optional, tag = "4")]
    pub jfmkjgdlgjg: ::core::option::Option<Ehkfanbfigf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nlpjadkojbf {
    #[prost(uint32, tag = "5")]
    pub pdjboniohii: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mcgbnebgbah {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(message, optional, tag = "14")]
    pub jfmkjgdlgjg: ::core::option::Option<Ehkfanbfigf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Npeiaidekic {
    #[prost(uint32, tag = "6")]
    pub pdjboniohii: u32,
    #[prost(uint32, tag = "1")]
    pub amlfmjednpm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bfkecjidkjm {
    #[prost(message, optional, tag = "11")]
    pub jfmkjgdlgjg: ::core::option::Option<Ehkfanbfigf>,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, tag = "12")]
    pub amlfmjednpm: u32,
    #[prost(uint32, tag = "15")]
    pub kglcegiaefo: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cciddcknoeb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hnplabkokij {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(message, optional, tag = "14")]
    pub jfmkjgdlgjg: ::core::option::Option<Ehkfanbfigf>,
    #[prost(message, optional, tag = "3")]
    pub hcbpknjbbgo: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bjbimbifmhe {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pbmomenpell {
    #[prost(message, optional, tag = "7")]
    pub dhbfppkhghf: ::core::option::Option<Fefaifljmhg>,
    #[prost(message, optional, tag = "9")]
    pub khpdleamfpn: ::core::option::Option<Beebagafccj>,
    #[prost(message, optional, tag = "10")]
    pub eafohbgekig: ::core::option::Option<Beimelkbjip>,
    #[prost(message, optional, tag = "11")]
    pub jjbghclhjml: ::core::option::Option<Nldkfhipphm>,
    #[prost(message, optional, tag = "13")]
    pub poehbbgegkm: ::core::option::Option<Nbmanpfgbgh>,
    #[prost(message, optional, tag = "15")]
    pub haaegbncmed: ::core::option::Option<Peehmmledmp>,
    #[prost(message, optional, tag = "1")]
    pub pgjhbdmdfhf: ::core::option::Option<Nlbojmdefii>,
    #[prost(message, optional, tag = "6")]
    pub napnbdcoafp: ::core::option::Option<Fhnndcjemjg>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ckfdbgejcgc {
    #[prost(message, optional, tag = "11")]
    pub khpdleamfpn: ::core::option::Option<Beebagafccj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fmmjpgnggch {
    #[prost(message, optional, tag = "9")]
    pub jfncaplkddd: ::core::option::Option<Fkmhheofflm>,
    #[prost(uint32, tag = "8")]
    pub hmnoecpfgga: u32,
    #[prost(uint32, tag = "2")]
    pub ojgdffddhan: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Codlhohjmag {
    #[prost(enumeration = "Lcmlaclkndi", tag = "6")]
    pub hfbfdnemjed: i32,
    #[prost(enumeration = "Jgjcjhmakka", tag = "11")]
    pub bpodijpdnnk: i32,
    #[prost(uint32, tag = "15")]
    pub jageglcnmjj: u32,
    #[prost(message, repeated, tag = "3")]
    pub dkpdnfafhpi: ::prost::alloc::vec::Vec<Fegohpmjhio>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Begmdeoalen {
    #[prost(uint32, tag = "5")]
    pub pihfebonpbk: u32,
    #[prost(uint32, tag = "7")]
    pub hmjhgpaeebn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iokedapjchk {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Elbbjpbcdbg {
    #[prost(message, repeated, tag = "7")]
    pub enodijllmof: ::prost::alloc::vec::Vec<Bglbagnedbn>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "13")]
    pub opbkdoccobp: ::prost::alloc::vec::Vec<Nmomemmfjnf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eifeodkkdlf {
    #[prost(uint32, tag = "1")]
    pub ombaohdohaf: u32,
    #[prost(uint32, tag = "5")]
    pub dealffogemo: u32,
    #[prost(uint32, tag = "9")]
    pub bilkfnalgla: u32,
    #[prost(uint32, tag = "10")]
    pub plafdnapiac: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dfhfkbiepml {
    #[prost(uint32, tag = "2")]
    pub dealffogemo: u32,
    #[prost(uint32, tag = "12")]
    pub plafdnapiac: u32,
    #[prost(uint32, tag = "10")]
    pub bilkfnalgla: u32,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(uint32, tag = "8")]
    pub ombaohdohaf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hjimlegohbm {
    #[prost(uint32, tag = "14")]
    pub plafdnapiac: u32,
    #[prost(uint32, tag = "10")]
    pub ombaohdohaf: u32,
    #[prost(uint32, tag = "12")]
    pub bilkfnalgla: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cfehmaklijp {
    #[prost(uint32, tag = "12")]
    pub bilkfnalgla: u32,
    #[prost(uint32, tag = "1")]
    pub mppokeidaha: u32,
    #[prost(uint32, tag = "9")]
    pub ombaohdohaf: u32,
    #[prost(uint32, tag = "13")]
    pub plafdnapiac: u32,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hpndbbaalge {
    #[prost(int32, tag = "9")]
    pub jepagkihefk: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ompnpabpodj {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nenjehjkolm {
    #[prost(message, optional, tag = "13")]
    pub jjbghclhjml: ::core::option::Option<Nldkfhipphm>,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Inkipahiigj {
    #[prost(uint32, tag = "1")]
    pub klhedpmgpjj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Onopommgjcp {
    #[prost(map = "uint32, uint32", tag = "6")]
    pub gbbbnfmgnlp: ::std::collections::HashMap<u32, u32>,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(uint32, tag = "8")]
    pub klhedpmgpjj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Icmepenlmke {
    #[prost(uint32, tag = "11")]
    pub imlnehpfdgi: u32,
    #[prost(uint32, tag = "14")]
    pub mppokeidaha: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jbblnlddedl {
    #[prost(message, optional, tag = "8")]
    pub pdepkbbpgem: ::core::option::Option<Oajdeacgcbj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Plbbhodfhob {
    #[prost(uint32, tag = "4")]
    pub mppokeidaha: u32,
    #[prost(enumeration = "Dojieelhjlp", tag = "5")]
    pub status: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ahnkdodapgf {
    #[prost(uint32, tag = "5")]
    pub plafdnapiac: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nkhnfljkmdo {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ienebekiefe {
    #[prost(message, repeated, tag = "4")]
    pub enodijllmof: ::prost::alloc::vec::Vec<Plbbhodfhob>,
    #[prost(message, repeated, tag = "9")]
    pub opbkdoccobp: ::prost::alloc::vec::Vec<Ahnkdodapgf>,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Opfnnmfjdko {
    #[prost(uint32, tag = "9")]
    pub dealffogemo: u32,
    #[prost(uint32, tag = "12")]
    pub ombaohdohaf: u32,
    #[prost(uint32, tag = "14")]
    pub plafdnapiac: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mnpanokijgm {
    #[prost(uint32, tag = "7")]
    pub plafdnapiac: u32,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(uint32, tag = "3")]
    pub dealffogemo: u32,
    #[prost(uint32, tag = "5")]
    pub ombaohdohaf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Obdjmclecof {
    #[prost(uint32, tag = "5")]
    pub plafdnapiac: u32,
    #[prost(uint32, tag = "11")]
    pub ombaohdohaf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Piafkoelgpc {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(uint32, tag = "13")]
    pub plafdnapiac: u32,
    #[prost(uint32, tag = "9")]
    pub ombaohdohaf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bcbblacopdm {
    #[prost(uint32, tag = "10")]
    pub plafdnapiac: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dhdlfdbnnjo {
    #[prost(message, repeated, tag = "8")]
    pub enodijllmof: ::prost::alloc::vec::Vec<Plbbhodfhob>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lcgionaidjn {
    #[prost(uint32, tag = "13")]
    pub mppokeidaha: u32,
    #[prost(uint32, repeated, tag = "10")]
    pub deiminffpjm: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "7")]
    pub afjmafgkpjd: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "3")]
    pub banmclnnhmg: bool,
    #[prost(uint32, tag = "5")]
    pub mfplkfnjaja: u32,
    #[prost(uint32, repeated, tag = "11")]
    pub gdmllhngaco: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "9")]
    pub jocekhkjjhl: bool,
    #[prost(uint32, tag = "6")]
    pub plafdnapiac: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kedcnahgdbd {
    #[prost(uint32, tag = "1")]
    pub amlfmjednpm: u32,
    #[prost(uint32, tag = "8")]
    pub ifehhfhihpo: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pifedfgbmfj {
    #[prost(uint32, tag = "5")]
    pub milhldhlpeh: u32,
    #[prost(uint32, tag = "4")]
    pub ibbgjhmnppm: u32,
    #[prost(message, repeated, tag = "15")]
    pub knookangkoi: ::prost::alloc::vec::Vec<Kedcnahgdbd>,
    #[prost(uint32, tag = "1")]
    pub njfgaabmpip: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bjdgcdijloe {
    #[prost(enumeration = "Eafeigpfigi", tag = "6")]
    pub hmjpippkklh: i32,
    #[prost(uint32, repeated, tag = "8")]
    pub adcafhjcaok: ::prost::alloc::vec::Vec<u32>,
    #[prost(map = "uint32, bool", tag = "9")]
    pub lahgngjaofh: ::std::collections::HashMap<u32, bool>,
    #[prost(message, repeated, tag = "11")]
    pub gjakcpheefj: ::prost::alloc::vec::Vec<Pifedfgbmfj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gepglobcikm {
    #[prost(uint32, tag = "2")]
    pub bnhhdjkdebi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iehnikilajp {
    #[prost(message, optional, tag = "6")]
    pub fdhbjjkabcm: ::core::option::Option<Jccemojomaf>,
    #[prost(uint32, tag = "11")]
    pub bnhhdjkdebi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kkneodnnmhm {
    #[prost(uint32, repeated, tag = "4")]
    pub dfgjpmnoija: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pifhepjagod {
    #[prost(message, optional, tag = "5")]
    pub fndbnajbnnc: ::core::option::Option<Pifedfgbmfj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cmdkoojbcmo {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(message, optional, tag = "14")]
    pub fndbnajbnnc: ::core::option::Option<Pifedfgbmfj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kndpfbphmgl {
    #[prost(message, optional, tag = "2")]
    pub omffcdjccec: ::core::option::Option<Bjdgcdijloe>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Enepmddookf {
    #[prost(uint32, tag = "5")]
    pub iaopeakjlhb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ojlknlpplln {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fkifdedbhlm {
    #[prost(message, optional, tag = "1")]
    pub hgpklojihdi: ::core::option::Option<Jccemojomaf>,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(uint32, tag = "2")]
    pub bnhhdjkdebi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Haghnfmnamn {
    #[prost(uint32, tag = "7")]
    pub nhmachllchm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ojfhmpegilp {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(uint32, tag = "4")]
    pub bnhhdjkdebi: u32,
    #[prost(message, optional, tag = "14")]
    pub hgpklojihdi: ::core::option::Option<Jccemojomaf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bobmjkkfllo {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oigfjobbeem {
    #[prost(uint32, tag = "10")]
    pub gblgdppifpe: u32,
    #[prost(bool, tag = "4")]
    pub gppnlcegnaa: bool,
    #[prost(uint32, repeated, tag = "15")]
    pub dhacblhbhaa: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lhcbalailkk {
    #[prost(uint32, tag = "10")]
    pub amikapecifp: u32,
    #[prost(message, repeated, tag = "12")]
    pub fhbapgkaijb: ::prost::alloc::vec::Vec<Oigfjobbeem>,
    #[prost(uint32, tag = "7")]
    pub kdgkdipnoim: u32,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(uint32, tag = "9")]
    pub nmfkgggbnfn: u32,
    #[prost(uint32, tag = "15")]
    pub dnmmpinhenh: u32,
    #[prost(uint32, repeated, tag = "5")]
    pub bndacoblngm: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub progress: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aeleecnidpe {
    #[prost(uint32, tag = "6")]
    pub gblgdppifpe: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fgogcaeoncb {
    #[prost(uint32, tag = "9")]
    pub gblgdppifpe: u32,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pbamffehppl {
    #[prost(uint32, tag = "7")]
    pub nhmachllchm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aobmgmkkjml {
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(uint32, tag = "14")]
    pub nhmachllchm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Idnpjbokbcl {
    #[prost(uint32, tag = "12")]
    pub gblgdppifpe: u32,
    #[prost(uint32, repeated, tag = "8")]
    pub bncalipcfha: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Boaeodkkjkl {
    #[prost(uint32, tag = "15")]
    pub gblgdppifpe: u32,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bcfebmiiigb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Liddhipfbad {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lciodnbhoma {
    #[prost(uint32, tag = "7")]
    pub ajhfilfnglk: u32,
    #[prost(uint32, tag = "3")]
    pub cngbfhafhel: u32,
    #[prost(uint32, repeated, tag = "13")]
    pub jgdnpajcced: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Heplbmgcaae {
    #[prost(uint32, repeated, tag = "5")]
    pub jgdnpajcced: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "1")]
    pub kcbgibpmhij: ::prost::alloc::vec::Vec<Lciodnbhoma>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gjeodnbchbe {
    #[prost(message, optional, tag = "9")]
    pub hcanpepdidg: ::core::option::Option<Heplbmgcaae>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mejcnamehef {
    #[prost(message, optional, tag = "1")]
    pub hcanpepdidg: ::core::option::Option<Heplbmgcaae>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Clbocnlnkpb {
    #[prost(message, optional, tag = "2")]
    pub hcanpepdidg: ::core::option::Option<Heplbmgcaae>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Acpmnokcmoc {
    #[prost(uint32, tag = "10")]
    pub gacha_random: u32,
    #[prost(uint32, tag = "1")]
    pub dellopmlmhi: u32,
    #[prost(message, optional, tag = "4")]
    pub hcanpepdidg: ::core::option::Option<Heplbmgcaae>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lfilnepgamh {
    #[prost(message, optional, tag = "5")]
    pub hcanpepdidg: ::core::option::Option<Heplbmgcaae>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mkkedjjecon {
    #[prost(bool, tag = "14")]
    pub lkiefakbooa: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Amhhlokmohd {
    #[prost(uint32, tag = "6")]
    pub kmjapkepige: u32,
    #[prost(message, optional, tag = "10")]
    pub cnkdlodbdoa: ::core::option::Option<Liddhipfbad>,
    #[prost(message, optional, tag = "14")]
    pub opacnkbpdmo: ::core::option::Option<Gjeodnbchbe>,
    #[prost(message, optional, tag = "2")]
    pub gbpnlpjcobd: ::core::option::Option<Mejcnamehef>,
    #[prost(message, optional, tag = "3")]
    pub ddeeahcgcjp: ::core::option::Option<Clbocnlnkpb>,
    #[prost(message, optional, tag = "7")]
    pub hdojdiiafef: ::core::option::Option<Acpmnokcmoc>,
    #[prost(message, optional, tag = "15")]
    pub ncbadldhfnb: ::core::option::Option<Lfilnepgamh>,
    #[prost(message, optional, tag = "12")]
    pub lhnifgioncj: ::core::option::Option<Mkkedjjecon>,
    #[prost(bool, tag = "4")]
    pub ejjejjdkagm: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iipjjhgalcf {
    #[prost(int32, tag = "4")]
    pub jakfllbhecc: i32,
    #[prost(int32, tag = "13")]
    pub bphlpagocoo: i32,
    #[prost(int32, tag = "6")]
    pub bfghfkhhlbk: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kidmjffnijp {
    #[prost(uint64, tag = "8")]
    pub unique_id: u64,
    #[prost(uint32, tag = "1")]
    pub apjjhceoeoo: u32,
    #[prost(uint32, tag = "3")]
    pub jfghjfckgcd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lianbhcnaam {
    #[prost(message, repeated, tag = "2")]
    pub buff_list: ::prost::alloc::vec::Vec<Kidmjffnijp>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pankjpbkbik {
    #[prost(message, optional, tag = "4")]
    pub jjeppbkgfmm: ::core::option::Option<Iipjjhgalcf>,
    #[prost(string, tag = "3")]
    pub opimagiofdf: ::prost::alloc::string::String,
    #[prost(uint32, tag = "8")]
    pub ljpgdphnjpm: u32,
    #[prost(uint32, tag = "11")]
    pub kgjoknnhddh: u32,
    #[prost(uint32, tag = "13")]
    pub hjbghgeignb: u32,
    #[prost(message, optional, tag = "6")]
    pub kecpbejkmfj: ::core::option::Option<Amhhlokmohd>,
    #[prost(uint32, tag = "5")]
    pub gblgdppifpe: u32,
    #[prost(uint32, tag = "10")]
    pub ceoicmflpkm: u32,
    #[prost(uint32, repeated, tag = "15")]
    pub kbjnpefpphn: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "14")]
    pub flbeikgmkga: ::core::option::Option<Lianbhcnaam>,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(uint32, tag = "2")]
    pub beimioebepi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eodkfcieled {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lpaiebcdajm {
    #[prost(message, optional, tag = "8")]
    pub hcanpepdidg: ::core::option::Option<Heplbmgcaae>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aghejikmbkp {
    #[prost(uint32, tag = "5")]
    pub ahgbnlbmcog: u32,
    #[prost(bool, tag = "2")]
    pub bccnneknbdm: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gjkpkigndlh {
    #[prost(uint32, repeated, tag = "6")]
    pub avatar_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dhgfmcbnclg {
    #[prost(bool, tag = "8")]
    pub cfbnldbiejn: bool,
    #[prost(uint32, tag = "11")]
    pub gacha_random: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fhhfjllmckj {
    #[prost(bool, tag = "1")]
    pub bccnneknbdm: bool,
    #[prost(uint32, tag = "8")]
    pub ahgbnlbmcog: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fgjfdjiajcg {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ckcgpnplbgb {
    #[prost(uint32, tag = "3")]
    pub gblgdppifpe: u32,
    #[prost(uint32, tag = "13")]
    pub kmjapkepige: u32,
    #[prost(message, optional, tag = "8")]
    pub ijoilgkaejp: ::core::option::Option<Eodkfcieled>,
    #[prost(message, optional, tag = "12")]
    pub kojgpmckefe: ::core::option::Option<Lpaiebcdajm>,
    #[prost(message, optional, tag = "9")]
    pub damcpkbemlm: ::core::option::Option<Aghejikmbkp>,
    #[prost(message, optional, tag = "11")]
    pub iomahjogaif: ::core::option::Option<Gjkpkigndlh>,
    #[prost(message, optional, tag = "6")]
    pub hhdnooadnmj: ::core::option::Option<Dhgfmcbnclg>,
    #[prost(message, optional, tag = "15")]
    pub chmfbijglpj: ::core::option::Option<Fhhfjllmckj>,
    #[prost(message, optional, tag = "2")]
    pub dnfeeckfhie: ::core::option::Option<Fgjfdjiajcg>,
    #[prost(uint32, tag = "10")]
    pub hjbghgeignb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ghkppjbkffi {
    #[prost(uint32, tag = "8")]
    pub gblgdppifpe: u32,
    #[prost(bool, tag = "7")]
    pub hleokiebide: bool,
    #[prost(uint32, tag = "14")]
    pub progress: u32,
    #[prost(uint32, tag = "6")]
    pub ljpgdphnjpm: u32,
    #[prost(uint32, tag = "15")]
    pub ceoicmflpkm: u32,
    #[prost(message, optional, tag = "11")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Heioppjkkdl {
    #[prost(message, optional, tag = "7")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(uint32, tag = "2")]
    pub kmjapkepige: u32,
    #[prost(enumeration = "Mlenmiffjlo", tag = "15")]
    pub akfomajdici: i32,
    #[prost(uint32, tag = "4")]
    pub nbijoljjmcd: u32,
    #[prost(uint32, tag = "6")]
    pub oabjnfmpjkg: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mleedpcgjop {
    #[prost(uint32, tag = "15")]
    pub gblgdppifpe: u32,
    #[prost(bool, tag = "2")]
    pub albpndfhdpm: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lkkcicjmfbg {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kkkbpghkpik {
    #[prost(uint32, tag = "12")]
    pub kmjapkepige: u32,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dnfgipipbod {
    #[prost(uint64, tag = "15")]
    pub unique_id: u64,
    #[prost(uint32, tag = "2")]
    pub gblgdppifpe: u32,
    #[prost(uint32, tag = "9")]
    pub kmjapkepige: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Foekpdeijph {
    #[prost(uint32, tag = "3")]
    pub kmjapkepige: u32,
    #[prost(uint32, tag = "6")]
    pub gblgdppifpe: u32,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(message, optional, tag = "5")]
    pub flbeikgmkga: ::core::option::Option<Lianbhcnaam>,
    #[prost(message, optional, tag = "240")]
    pub hcanpepdidg: ::core::option::Option<Heplbmgcaae>,
    #[prost(message, optional, tag = "1571")]
    pub jjeppbkgfmm: ::core::option::Option<Iipjjhgalcf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ificiimlokp {
    #[prost(message, optional, tag = "4")]
    pub ddkkcoofcjh: ::core::option::Option<Ghkppjbkffi>,
    #[prost(bool, tag = "6")]
    pub kmndgjjcdpe: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ekjjdahbjgo {
    #[prost(uint32, tag = "11")]
    pub amikapecifp: u32,
    #[prost(uint32, tag = "13")]
    pub kdgkdipnoim: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Item {
    #[prost(uint32, tag = "4")]
    pub promotion: u32,
    #[prost(uint32, tag = "12")]
    pub num: u32,
    #[prost(uint32, tag = "3")]
    pub main_affix_id: u32,
    #[prost(uint32, tag = "10")]
    pub level: u32,
    #[prost(uint32, tag = "2")]
    pub unique_id: u32,
    #[prost(uint32, tag = "7")]
    pub rank: u32,
    #[prost(uint32, tag = "6")]
    pub item_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ItemList {
    #[prost(message, repeated, tag = "4")]
    pub item_list: ::prost::alloc::vec::Vec<Item>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PileItem {
    #[prost(uint32, tag = "11")]
    pub item_id: u32,
    #[prost(uint32, tag = "8")]
    pub item_num: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ItemCost {
    #[prost(oneof = "item_cost::Item", tags = "14, 4, 10")]
    pub item: ::core::option::Option<item_cost::Item>,
}
/// Nested message and enum types in `ItemCost`.
pub mod item_cost {
    #[allow(clippy::derive_partial_eq_without_eq)]
    #[derive(Clone, PartialEq, ::prost::Oneof)]
    pub enum Item {
        #[prost(message, tag = "14")]
        PileItem(super::PileItem),
        #[prost(uint32, tag = "4")]
        EquipmentUniqueId(u32),
        #[prost(uint32, tag = "10")]
        RelicUniqueId(u32),
    }
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ItemCostData {
    #[prost(message, repeated, tag = "14")]
    pub item_list: ::prost::alloc::vec::Vec<ItemCost>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Feojnpdiboe {
    #[prost(uint32, tag = "3")]
    pub bmnpahoebpb: u32,
    #[prost(uint32, tag = "8")]
    pub gifbaoolifn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ecjgcpeneac {
    #[prost(uint32, tag = "2")]
    pub promotion: u32,
    #[prost(uint32, tag = "5")]
    pub exp: u32,
    #[prost(uint32, tag = "13")]
    pub rank: u32,
    #[prost(uint32, tag = "4")]
    pub tid: u32,
    #[prost(uint32, tag = "9")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nggildmhjni {
    #[prost(uint32, tag = "4")]
    pub exp: u32,
    #[prost(message, repeated, tag = "5")]
    pub sub_affix_list: ::prost::alloc::vec::Vec<RelicAffix>,
    #[prost(uint32, tag = "6")]
    pub level: u32,
    #[prost(uint32, tag = "2")]
    pub tid: u32,
    #[prost(uint32, tag = "8")]
    pub main_affix_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lagpefhbbgh {
    #[prost(message, optional, tag = "15")]
    pub eabhglbacff: ::core::option::Option<Feojnpdiboe>,
    #[prost(message, optional, tag = "9")]
    pub affbgnejhkl: ::core::option::Option<Ecjgcpeneac>,
    #[prost(message, optional, tag = "7")]
    pub dbecbhfhphk: ::core::option::Option<Nggildmhjni>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ilknlohcbja {
    #[prost(message, repeated, tag = "14")]
    pub item_list: ::prost::alloc::vec::Vec<Lagpefhbbgh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Vector {
    #[prost(sint32, tag = "4")]
    pub bagloppgnpb: i32,
    #[prost(sint32, tag = "3")]
    pub bemlopmcgch: i32,
    #[prost(sint32, tag = "2")]
    pub baimdminomk: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MotionInfo {
    #[prost(message, optional, tag = "4")]
    pub eiaoiankefd: ::core::option::Option<Vector>,
    #[prost(message, optional, tag = "12")]
    pub aomilajjmii: ::core::option::Option<Vector>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ojmhcnlolph {
    #[prost(float, tag = "12")]
    pub ghdedodmhld: f32,
    #[prost(float, tag = "11")]
    pub bemlopmcgch: f32,
    #[prost(float, tag = "8")]
    pub baimdminomk: f32,
    #[prost(float, tag = "10")]
    pub bagloppgnpb: f32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Holldlkceof {
    #[prost(uint32, tag = "14")]
    pub dpafbpjjokk: u32,
    #[prost(uint32, tag = "7")]
    pub level: u32,
    #[prost(uint32, tag = "13")]
    pub onmmdmcacmb: u32,
    #[prost(uint32, tag = "15")]
    pub gcabmpeeflm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneMonsterParam {
    #[prost(uint32, tag = "9")]
    pub max_hp: u32,
    #[prost(uint32, tag = "14")]
    pub aiapcboelmg: u32,
    #[prost(uint32, tag = "12")]
    pub monster_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneMonsterWave {
    #[prost(message, optional, tag = "8")]
    pub ejahmdkklbn: ::core::option::Option<Holldlkceof>,
    #[prost(message, repeated, tag = "2")]
    pub monster_list: ::prost::alloc::vec::Vec<SceneMonsterParam>,
    #[prost(message, repeated, tag = "5")]
    pub nejmhdapohc: ::prost::alloc::vec::Vec<ItemList>,
    #[prost(uint32, tag = "14")]
    pub pejhihcbkkg: u32,
    #[prost(uint32, tag = "9")]
    pub iilhbcalikm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneBattleInfo {
    #[prost(uint32, tag = "11")]
    pub hklekgibech: u32,
    #[prost(uint32, tag = "3")]
    pub battle_id: u32,
    #[prost(message, repeated, tag = "1179")]
    pub mpobegkcikn: ::prost::alloc::vec::Vec<Npjnkmmjfdf>,
    #[prost(message, repeated, tag = "14")]
    pub battle_avatar_list: ::prost::alloc::vec::Vec<BattleAvatar>,
    #[prost(message, optional, tag = "1811")]
    pub evolve_build_battle_info: ::core::option::Option<EvolveBuildBattleInfo>,
    #[prost(bool, tag = "15")]
    pub ifdmecjogpj: bool,
    #[prost(message, repeated, tag = "12")]
    pub buff_list: ::prost::alloc::vec::Vec<BattleBuff>,
    #[prost(message, optional, tag = "1046")]
    pub ikijnjopmob: ::core::option::Option<Pljkpichajp>,
    #[prost(uint32, tag = "9")]
    pub logic_random_seed: u32,
    #[prost(uint32, tag = "5")]
    pub kimmjioaodn: u32,
    #[prost(message, repeated, tag = "10")]
    pub monster_wave_list: ::prost::alloc::vec::Vec<SceneMonsterWave>,
    #[prost(uint32, tag = "1")]
    pub stage_id: u32,
    #[prost(uint32, tag = "2")]
    pub world_level: u32,
    #[prost(map = "uint32, message", tag = "1433")]
    pub ichnbmifjdi: ::std::collections::HashMap<u32, Hbinjjdphdo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bihglhmefjo {
    #[prost(message, repeated, tag = "12")]
    pub battle_avatar_list: ::prost::alloc::vec::Vec<Oikpalfedbb>,
    #[prost(uint32, tag = "14")]
    pub logic_random_seed: u32,
    #[prost(uint32, tag = "9")]
    pub stage_id: u32,
    #[prost(message, repeated, tag = "2")]
    pub buff_list: ::prost::alloc::vec::Vec<BattleBuff>,
    #[prost(uint32, tag = "13")]
    pub battle_id: u32,
    #[prost(bool, tag = "11")]
    pub ifdmecjogpj: bool,
    #[prost(message, repeated, tag = "10")]
    pub monster_wave_list: ::prost::alloc::vec::Vec<SceneMonsterWave>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Focolkgmoki {
    #[prost(uint32, tag = "2")]
    pub level: u32,
    #[prost(uint32, tag = "5")]
    pub world_level: u32,
    #[prost(bool, tag = "4")]
    pub ebogilighmh: bool,
    #[prost(uint32, tag = "1")]
    pub pebckggmpje: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Chgngnmjhkm {
    #[prost(uint32, tag = "5")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kemlbjmhfkk {
    #[prost(uint32, tag = "5")]
    pub level: u32,
    #[prost(message, optional, tag = "6")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iakmbjdkjdd {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Clkbniiafee {
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "2")]
    pub mlpdapdfdmi: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "6")]
    pub pebckggmpje: u32,
    #[prost(message, repeated, tag = "12")]
    pub jpddaafinke: ::prost::alloc::vec::Vec<Focolkgmoki>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gflkljmebfh {
    #[prost(message, repeated, tag = "3")]
    pub jpddaafinke: ::prost::alloc::vec::Vec<Focolkgmoki>,
    #[prost(uint32, tag = "14")]
    pub pebckggmpje: u32,
    #[prost(uint32, repeated, tag = "1")]
    pub mlpdapdfdmi: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Albgjlodeea {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jcffmbfeijp {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(message, optional, tag = "4")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, repeated, tag = "7")]
    pub flgpoajfdib: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DrinkMakerGuest {
    #[prost(uint32, repeated, tag = "11")]
    pub unlocked_favor_tag_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "3")]
    pub faith: u32,
    #[prost(uint32, tag = "8")]
    pub guest_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cncpilhchja {
    #[prost(uint32, tag = "6")]
    pub bdknniclanm: u32,
    #[prost(uint32, repeated, tag = "14")]
    pub emdicgdeeea: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub megdlcoeaja: u32,
    #[prost(uint32, tag = "10")]
    pub odamkblmimo: u32,
    #[prost(uint32, tag = "7")]
    pub egfdpinnfbb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mchdoelancd {
    #[prost(uint32, tag = "1")]
    pub cdegeidhbhj: u32,
    #[prost(bool, tag = "12")]
    pub bfknlcpgdeh: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lmojgkbebok {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gpkobmnnlhf {
    #[prost(message, repeated, tag = "2")]
    pub oijcobajjmb: ::prost::alloc::vec::Vec<DrinkMakerGuest>,
    #[prost(message, optional, tag = "5")]
    pub pihniiaehnk: ::core::option::Option<Cncpilhchja>,
    #[prost(uint32, tag = "11")]
    pub dflmmmmoolj: u32,
    #[prost(uint32, repeated, tag = "12")]
    pub bfckangphjn: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "1")]
    pub level: u32,
    #[prost(uint32, tag = "7")]
    pub afhmilffdib: u32,
    #[prost(uint32, tag = "4")]
    pub ghaajccnadf: u32,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
    #[prost(uint32, tag = "13")]
    pub exp: u32,
    #[prost(uint32, tag = "3")]
    pub hfdpgmnengp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fgkmalebkei {
    #[prost(uint32, tag = "1")]
    pub hfdpgmnengp: u32,
    #[prost(message, optional, tag = "6")]
    pub kppfceifpdn: ::core::option::Option<Cncpilhchja>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MakeDrinkScRsp {
    #[prost(bool, tag = "14")]
    pub is_succ: bool,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(uint32, tag = "3")]
    pub next_chat_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bpkdmfmbakb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EndDrinkMakerSequenceScRsp {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(uint32, tag = "15")]
    pub tips: u32,
    #[prost(uint32, tag = "8")]
    pub next_sequence_id: u32,
    #[prost(uint32, tag = "7")]
    pub exp: u32,
    #[prost(message, optional, tag = "2")]
    pub guest: ::core::option::Option<DrinkMakerGuest>,
    #[prost(uint32, tag = "10")]
    pub level: u32,
    #[prost(message, optional, tag = "5")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(message, repeated, tag = "12")]
    pub request_list: ::prost::alloc::vec::Vec<Mchdoelancd>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Phdkebjkmbh {
    #[prost(bool, tag = "9")]
    pub iijpdkfdakn: bool,
    #[prost(uint32, tag = "10")]
    pub cdegeidhbhj: u32,
    #[prost(message, optional, tag = "4")]
    pub kppfceifpdn: ::core::option::Option<Cncpilhchja>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MakeMissionDrinkScRsp {
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(bool, tag = "10")]
    pub is_succ: bool,
    #[prost(message, optional, tag = "12")]
    pub custom_drink: ::core::option::Option<Cncpilhchja>,
    #[prost(bool, tag = "6")]
    pub is_save: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ndcmdcpafbb {
    #[prost(uint32, tag = "15")]
    pub bbbabgifidf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lplpbdldlch {
    #[prost(uint32, tag = "5")]
    pub meekkgnihle: u32,
    #[prost(message, optional, tag = "15")]
    pub kppfceifpdn: ::core::option::Option<Cncpilhchja>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ijclfafalla {
    #[prost(uint32, tag = "15")]
    pub meekkgnihle: u32,
    #[prost(message, optional, tag = "12")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(bool, tag = "13")]
    pub bfknlcpgdeh: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Njlcohpnmal {
    #[prost(uint32, tag = "14")]
    pub dflmmmmoolj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EvolveBuildAvatar {
    #[prost(uint32, tag = "3")]
    pub avatar_id: u32,
    #[prost(enumeration = "AvatarType", tag = "11")]
    pub avatar_type: i32,
    #[prost(double, tag = "10")]
    pub damage: f64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EvolveBuildLevelInfo {
    #[prost(message, repeated, tag = "10")]
    pub avatar_list: ::prost::alloc::vec::Vec<EvolveBuildAvatar>,
    #[prost(uint32, tag = "14")]
    pub round_cnt: u32,
    #[prost(message, repeated, tag = "9")]
    pub battle_target_list: ::prost::alloc::vec::Vec<BattleTarget>,
    #[prost(uint32, tag = "8")]
    pub cur_game_exp: u32,
    #[prost(uint32, repeated, tag = "11")]
    pub period_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "12")]
    pub battle_info: ::core::option::Option<EvolveBuildBattleInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iogkfcflcog {
    #[prost(uint32, tag = "3")]
    pub pfdeammddij: u32,
    #[prost(uint32, tag = "1")]
    pub hocahkmlhbl: u32,
    #[prost(uint32, tag = "5")]
    pub oplphfmanjk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kbkapegdgai {
    #[prost(uint32, tag = "14")]
    pub deimomobeol: u32,
    #[prost(uint32, tag = "7")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Afbcjdipheo {
    #[prost(bool, tag = "7")]
    pub mpmmiajakla: bool,
    #[prost(uint32, repeated, tag = "3")]
    pub ddhmbelengb: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "10")]
    pub pffpigapaik: bool,
    #[prost(uint32, tag = "13")]
    pub pfdeammddij: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eofegbbmljg {
    #[prost(bool, tag = "5")]
    pub opbdifllokf: bool,
    #[prost(uint32, tag = "9")]
    pub plndcbnfnpl: u32,
    #[prost(message, repeated, tag = "14")]
    pub hfaiacoohjo: ::prost::alloc::vec::Vec<Afbcjdipheo>,
    #[prost(uint32, tag = "13")]
    pub kdgkdipnoim: u32,
    #[prost(bool, tag = "2")]
    pub ggjhinoneap: bool,
    #[prost(uint32, repeated, tag = "1")]
    pub gplojgfgfcn: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "6")]
    pub gmncbmphbpo: ::prost::alloc::vec::Vec<Kbkapegdgai>,
    #[prost(uint32, tag = "3")]
    pub exp: u32,
    #[prost(message, repeated, tag = "4")]
    pub eknlabncbeg: ::prost::alloc::vec::Vec<Iogkfcflcog>,
    #[prost(uint32, repeated, tag = "7")]
    pub haakbfokfde: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Epmppioldmk {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pfgbnbieiip {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(message, optional, tag = "4")]
    pub khpdleamfpn: ::core::option::Option<EvolveBuildLevelInfo>,
    #[prost(message, optional, tag = "11")]
    pub haaegbncmed: ::core::option::Option<Eofegbbmljg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mdlffjkjfbe {
    #[prost(message, repeated, tag = "14")]
    pub avatar_list: ::prost::alloc::vec::Vec<EvolveBuildAvatar>,
    #[prost(uint32, tag = "5")]
    pub pfdeammddij: u32,
    #[prost(message, optional, tag = "8")]
    pub mngnjfhmmib: ::core::option::Option<Nbfdglmhcip>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ihofogghphf {
    #[prost(message, optional, tag = "11")]
    pub abadaamepje: ::core::option::Option<SceneBattleInfo>,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, optional, tag = "4")]
    pub khpdleamfpn: ::core::option::Option<EvolveBuildLevelInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jcbckdanfem {
    #[prost(uint32, tag = "1")]
    pub pfdeammddij: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ejbpjedddno {
    #[prost(message, optional, tag = "1")]
    pub abadaamepje: ::core::option::Option<SceneBattleInfo>,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, optional, tag = "11")]
    pub khpdleamfpn: ::core::option::Option<EvolveBuildLevelInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nfffpdkfbla {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hhmknobhcjo {
    #[prost(message, optional, tag = "10")]
    pub khpdleamfpn: ::core::option::Option<EvolveBuildLevelInfo>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jhjgfehfkgj {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cjjfnefdeaa {
    #[prost(message, optional, tag = "10")]
    pub khpdleamfpn: ::core::option::Option<EvolveBuildLevelInfo>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EvolveBuildFinishScNotify {
    #[prost(uint32, tag = "11")]
    pub cur_period_type: u32,
    #[prost(uint32, tag = "15")]
    pub exp: u32,
    #[prost(message, optional, tag = "4")]
    pub level_info: ::core::option::Option<EvolveBuildLevelInfo>,
    #[prost(uint32, tag = "8")]
    pub coin: u32,
    #[prost(uint32, tag = "14")]
    pub score: u32,
    #[prost(bool, tag = "7")]
    pub is_lose: bool,
    #[prost(uint32, tag = "6")]
    pub wave: u32,
    #[prost(enumeration = "Mndllmpgfgj", tag = "5")]
    pub battle_result_type: i32,
    #[prost(uint32, tag = "12")]
    pub level_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mplkgckdpbp {
    #[prost(uint32, tag = "5")]
    pub pfdeammddij: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hjbhmaojdip {
    #[prost(uint32, tag = "10")]
    pub pfdeammddij: u32,
    #[prost(message, optional, tag = "3")]
    pub phmjgbcbfnj: ::core::option::Option<Afbcjdipheo>,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Makpinmicia {
    #[prost(uint32, tag = "5")]
    pub deimomobeol: u32,
    #[prost(uint32, tag = "13")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jlkhmlamabm {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, tag = "4")]
    pub deimomobeol: u32,
    #[prost(uint32, tag = "12")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Megladjblec {
    #[prost(uint32, tag = "1")]
    pub deimomobeol: u32,
    #[prost(uint32, tag = "5")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lgnenpanpaj {
    #[prost(uint32, tag = "1")]
    pub level: u32,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(uint32, tag = "9")]
    pub deimomobeol: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cphndcbhdfa {
    #[prost(uint32, tag = "6")]
    pub plndcbnfnpl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ikloamindel {
    #[prost(uint32, tag = "11")]
    pub plndcbnfnpl: u32,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(message, optional, tag = "12")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cnngogcnphe {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nnojcicmpli {
    #[prost(uint32, tag = "8")]
    pub kdgkdipnoim: u32,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "1")]
    pub gmncbmphbpo: ::prost::alloc::vec::Vec<Kbkapegdgai>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mbbkonkiaic {
    #[prost(uint32, tag = "14")]
    pub kdgkdipnoim: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Padinpaobbo {
    #[prost(bool, tag = "8")]
    pub opbdifllokf: bool,
    #[prost(bool, tag = "15")]
    pub ggjhinoneap: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Expedition {
    #[prost(uint32, tag = "12")]
    pub duration: u32,
    #[prost(uint32, tag = "7")]
    pub id: u32,
    #[prost(int64, tag = "15")]
    pub accept_time: i64,
    #[prost(uint32, repeated, tag = "9")]
    pub avatar_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hmfffjpjcog {
    #[prost(uint32, tag = "8")]
    pub mjlobpfinjo: u32,
    #[prost(uint32, tag = "7")]
    pub kpchfgkidpn: u32,
    #[prost(uint32, repeated, tag = "4")]
    pub avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "12")]
    pub id: u32,
    #[prost(uint32, tag = "2")]
    pub ihfebcgdmgf: u32,
    #[prost(int64, tag = "5")]
    pub accept_time: i64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetExpeditionDataCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetExpeditionDataScRsp {
    #[prost(message, repeated, tag = "11")]
    pub expedtion_list: ::prost::alloc::vec::Vec<Expedition>,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "8")]
    pub keknkgcdnnd: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub team_count: u32,
    #[prost(message, repeated, tag = "10")]
    pub npkcmmlbjkd: ::prost::alloc::vec::Vec<Hmfffjpjcog>,
    #[prost(uint32, repeated, tag = "15")]
    pub kppjkkcikgg: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "2")]
    pub opmkfngggan: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AcceptExpeditionCsReq {
    #[prost(message, optional, tag = "6")]
    pub expedition: ::core::option::Option<Expedition>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AcceptExpeditionScRsp {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(message, optional, tag = "2")]
    pub expedition: ::core::option::Option<Expedition>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pcapchfijcn {
    #[prost(message, repeated, tag = "5")]
    pub obdgnjbidaf: ::prost::alloc::vec::Vec<Expedition>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Okgcaoikfoo {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "15")]
    pub oengpdkppgf: ::prost::alloc::vec::Vec<Expedition>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CancelExpeditionCsReq {
    #[prost(uint32, tag = "5")]
    pub expedition_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CancelExpeditionScRsp {
    #[prost(uint32, tag = "1")]
    pub expedition_id: u32,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TakeExpeditionRewardCsReq {
    #[prost(uint32, tag = "2")]
    pub expedition_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TakeExpeditionRewardScRsp {
    #[prost(message, optional, tag = "13")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "6")]
    pub expedition_id: u32,
    #[prost(message, optional, tag = "8")]
    pub ccdnalakokd: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cadkmfebbei {
    #[prost(uint32, repeated, tag = "12")]
    pub hfpaoefkadc: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jllpnehjeih {
    #[prost(uint32, repeated, tag = "7")]
    pub hhijnahdpnj: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "5")]
    pub iigpbaagkjd: ::prost::alloc::vec::Vec<ItemList>,
    #[prost(message, optional, tag = "14")]
    pub ccdnalakokd: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(message, optional, tag = "13")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(message, repeated, tag = "11")]
    pub oikbjdmmgeo: ::prost::alloc::vec::Vec<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gljkfpediod {
    #[prost(uint32, tag = "11")]
    pub team_count: u32,
    #[prost(uint32, repeated, tag = "5")]
    pub keknkgcdnnd: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "4")]
    pub opmkfngggan: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "1")]
    pub npkcmmlbjkd: ::prost::alloc::vec::Vec<Hmfffjpjcog>,
    #[prost(message, repeated, tag = "9")]
    pub expedtion_list: ::prost::alloc::vec::Vec<Expedition>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jcbidbmmiec {
    #[prost(message, optional, tag = "14")]
    pub ahaajkkmfpj: ::core::option::Option<Hmfffjpjcog>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ejpahopggij {
    #[prost(message, optional, tag = "1")]
    pub ahaajkkmfpj: ::core::option::Option<Hmfffjpjcog>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dmgifjkmnkl {
    #[prost(uint32, tag = "11")]
    pub fgoabdhambi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lilobaoeoac {
    #[prost(uint32, tag = "13")]
    pub fgoabdhambi: u32,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Khjcnfdmkie {
    #[prost(uint32, tag = "5")]
    pub fgoabdhambi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dbhppimkiom {
    #[prost(message, optional, tag = "7")]
    pub ccdnalakokd: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "6")]
    pub fgoabdhambi: u32,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(uint32, tag = "4")]
    pub jfjcjmpbhgk: u32,
    #[prost(message, optional, tag = "1")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lgbffdanakp {
    #[prost(message, repeated, tag = "9")]
    pub avatar_list: ::prost::alloc::vec::Vec<Ieompjkdigl>,
    #[prost(uint32, repeated, tag = "13")]
    pub buff_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fkicjbjecla {
    #[prost(uint32, repeated, tag = "8")]
    pub jkdfdhiofnc: ::prost::alloc::vec::Vec<u32>,
    #[prost(map = "uint32, message", tag = "5")]
    pub ijecfnpbdnj: ::std::collections::HashMap<u32, Lgbffdanakp>,
    #[prost(uint32, repeated, tag = "14")]
    pub lighcgpgdoj: ::prost::alloc::vec::Vec<u32>,
    #[prost(map = "uint32, uint32", tag = "1")]
    pub gpamglafkgj: ::std::collections::HashMap<u32, u32>,
    #[prost(uint32, repeated, tag = "13")]
    pub dllbkbpcopm: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "11")]
    pub ipkkglmmanh: u32,
    #[prost(uint32, repeated, tag = "9")]
    pub hcbejjnnbpj: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kkdloiadlke {
    #[prost(uint32, tag = "9")]
    pub ipkkglmmanh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fmpealenepm {
    #[prost(message, optional, tag = "15")]
    pub jfgeclaegll: ::core::option::Option<Fkicjbjecla>,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nnafdnejcnj {
    #[prost(message, optional, tag = "2")]
    pub jfgeclaegll: ::core::option::Option<Fkicjbjecla>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ieompjkdigl {
    #[prost(uint32, tag = "15")]
    pub ckondfhadld: u32,
    #[prost(enumeration = "AvatarType", tag = "1")]
    pub avatar_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Knonoplheie {
    #[prost(message, repeated, tag = "15")]
    pub avatar_list: ::prost::alloc::vec::Vec<Ieompjkdigl>,
    #[prost(uint32, tag = "8")]
    pub battle_id: u32,
    #[prost(uint32, repeated, tag = "9")]
    pub buff_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "14")]
    pub ipkkglmmanh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Onpmchlmomg {
    #[prost(uint32, tag = "2")]
    pub ipkkglmmanh: u32,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
    #[prost(message, optional, tag = "13")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
    #[prost(uint32, tag = "1")]
    pub battle_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lcfpdjpalmm {
    #[prost(uint32, tag = "1")]
    pub battle_id: u32,
    #[prost(uint32, tag = "13")]
    pub ipkkglmmanh: u32,
    #[prost(uint32, tag = "2")]
    pub gbifdllkika: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fjkebdncchm {
    #[prost(uint32, tag = "3")]
    pub iolhdolobhm: u32,
    #[prost(uint32, tag = "7")]
    pub kbfkdafbjol: u32,
    #[prost(enumeration = "Mhomligaiji", tag = "10")]
    pub eifnhdodjjf: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cdjpoclpdlg {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ccelpkdiiam {
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "15")]
    pub ngamilkpkef: ::prost::alloc::vec::Vec<Fjkebdncchm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jpmhaaalljl {
    #[prost(uint32, tag = "8")]
    pub fpnhmcmhfho: u32,
    #[prost(uint32, tag = "14")]
    pub caaphphgjgg: u32,
    #[prost(uint32, tag = "9")]
    pub id: u32,
    #[prost(enumeration = "Mhomligaiji", tag = "4")]
    pub gfaoglkehhj: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Knadkjijmjj {
    #[prost(message, repeated, tag = "6")]
    pub avatar_list: ::prost::alloc::vec::Vec<Fgojknkcpip>,
    #[prost(uint32, tag = "14")]
    pub id: u32,
    #[prost(uint32, tag = "2")]
    pub bnkoadfgedi: u32,
    #[prost(uint32, tag = "15")]
    pub fbagdajjgfa: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jjbgfjolnod {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(message, optional, tag = "12")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
    #[prost(uint32, tag = "6")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FightActivityGroup {
    #[prost(uint32, tag = "2")]
    pub group_id: u32,
    #[prost(uint32, tag = "9")]
    pub passed_max_difficulty_level: u32,
    #[prost(uint32, repeated, tag = "15")]
    pub taken_difficulty_level_reward_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "6")]
    pub endless_max_wave: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jnniniaoceh {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pmabahbohkg {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(bool, tag = "10")]
    pub gfibklklfhp: bool,
    #[prost(message, repeated, tag = "4")]
    pub hnplkjgdkel: ::prost::alloc::vec::Vec<FightActivityGroup>,
    #[prost(map = "uint32, uint32", tag = "1")]
    pub lbcmloaacha: ::std::collections::HashMap<u32, u32>,
    #[prost(uint32, tag = "14")]
    pub world_level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Phkjhkbeipl {
    #[prost(message, repeated, tag = "13")]
    pub hnplkjgdkel: ::prost::alloc::vec::Vec<FightActivityGroup>,
    #[prost(map = "uint32, uint32", tag = "6")]
    pub lbcmloaacha: ::std::collections::HashMap<u32, u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nagaiealjgf {
    #[prost(uint32, tag = "4")]
    pub ckondfhadld: u32,
    #[prost(enumeration = "AvatarType", tag = "11")]
    pub avatar_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fkdgepkoipo {
    #[prost(message, repeated, tag = "2")]
    pub nhohihplflf: ::prost::alloc::vec::Vec<Nagaiealjgf>,
    #[prost(uint32, tag = "3")]
    pub group_id: u32,
    #[prost(uint32, repeated, tag = "4")]
    pub item_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "6")]
    pub avatar_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub cjdmdpdnibf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jjnabjejgap {
    #[prost(uint32, tag = "9")]
    pub group_id: u32,
    #[prost(uint32, tag = "6")]
    pub cjdmdpdnibf: u32,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(message, optional, tag = "15")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lmknclohjkm {
    #[prost(uint32, tag = "7")]
    pub group_id: u32,
    #[prost(uint32, tag = "4")]
    pub cjdmdpdnibf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bdcgfcpoego {
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(message, optional, tag = "11")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "15")]
    pub cjdmdpdnibf: u32,
    #[prost(uint32, tag = "12")]
    pub group_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AssistSimpleInfo {
    #[prost(uint32, tag = "14")]
    pub pos: u32,
    #[prost(uint32, tag = "7")]
    pub avatar_id: u32,
    #[prost(uint32, tag = "11")]
    pub dressed_skin_id: u32,
    #[prost(uint32, tag = "8")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Alcoeanikil {
    #[prost(uint32, tag = "10")]
    pub beocpgiampd: u32,
    #[prost(enumeration = "Ijicnomkdkc", tag = "5")]
    pub hempkbbndjj: i32,
    #[prost(uint32, tag = "4")]
    pub mbbpilgjgil: u32,
    #[prost(uint32, tag = "13")]
    pub modapigjnnj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hcdpijbnijp {
    #[prost(string, tag = "8")]
    pub ailinangjne: ::prost::alloc::string::String,
    #[prost(uint32, tag = "4")]
    pub jpajpffgnbi: u32,
    #[prost(bool, tag = "9")]
    pub jpangkaaold: bool,
    #[prost(uint32, tag = "5")]
    pub gjlfhjlijon: u32,
    #[prost(string, tag = "12")]
    pub ldfiofjhjja: ::prost::alloc::string::String,
    #[prost(string, tag = "14")]
    pub mjeebfegeai: ::prost::alloc::string::String,
    #[prost(enumeration = "PlatformType", tag = "13")]
    pub mbdjcknimop: i32,
    #[prost(int64, tag = "2")]
    pub oopogjgllpg: i64,
    #[prost(enumeration = "Oofkgobopdi", tag = "3")]
    pub igmaomgegaj: i32,
    #[prost(string, tag = "6")]
    pub nickname: ::prost::alloc::string::String,
    #[prost(uint32, tag = "15")]
    pub uid: u32,
    #[prost(uint32, tag = "10")]
    pub level: u32,
    #[prost(message, repeated, tag = "7")]
    pub plmbeaaegak: ::prost::alloc::vec::Vec<AssistSimpleInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cfmjkgdcljm {
    #[prost(uint32, tag = "2")]
    pub rank: u32,
    #[prost(uint32, tag = "1")]
    pub promotion: u32,
    #[prost(uint32, tag = "12")]
    pub level: u32,
    #[prost(uint32, tag = "8")]
    pub tid: u32,
    #[prost(uint32, tag = "13")]
    pub exp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fiicppilmha {
    #[prost(uint32, tag = "8")]
    pub tid: u32,
    #[prost(uint32, tag = "6")]
    pub main_affix_id: u32,
    #[prost(uint32, tag = "15")]
    pub level: u32,
    #[prost(uint32, tag = "1")]
    pub exp: u32,
    #[prost(uint32, tag = "2")]
    pub ipnhjoomhdm: u32,
    #[prost(message, repeated, tag = "14")]
    pub sub_affix_list: ::prost::alloc::vec::Vec<RelicAffix>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DisplayAvatarDetailInfo {
    #[prost(uint32, tag = "15")]
    pub dressed_skin_id: u32,
    #[prost(uint32, tag = "5")]
    pub rank: u32,
    #[prost(uint32, tag = "14")]
    pub pos: u32,
    #[prost(uint32, tag = "11")]
    pub avatar_id: u32,
    #[prost(message, repeated, tag = "6")]
    pub skilltree_list: ::prost::alloc::vec::Vec<AvatarSkillTree>,
    #[prost(uint32, tag = "12")]
    pub level: u32,
    #[prost(message, repeated, tag = "8")]
    pub relic_list: ::prost::alloc::vec::Vec<Fiicppilmha>,
    #[prost(uint32, tag = "4")]
    pub promotion: u32,
    #[prost(message, optional, tag = "2")]
    pub equipment: ::core::option::Option<Cfmjkgdcljm>,
    #[prost(uint32, tag = "10")]
    pub exp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pmgmanjbjok {
    #[prost(uint32, tag = "6")]
    pub ejmjikcdimm: u32,
    #[prost(uint32, tag = "14")]
    pub jflfdijpneo: u32,
    #[prost(uint32, tag = "3")]
    pub iladmeohhec: u32,
    #[prost(uint32, tag = "1")]
    pub dcioblhlico: u32,
    #[prost(uint32, tag = "15")]
    pub klleonmnldi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fgfhnfkfjah {
    #[prost(uint32, tag = "1")]
    pub gbnldjipeek: u32,
    #[prost(uint32, tag = "5")]
    pub modapigjnnj: u32,
    #[prost(uint32, tag = "7")]
    pub hfjebeenddh: u32,
    #[prost(uint32, tag = "15")]
    pub ndkopejbgae: u32,
    #[prost(uint32, tag = "13")]
    pub odlmocdbjhp: u32,
    #[prost(uint32, tag = "12")]
    pub kokkgadoagl: u32,
    #[prost(uint32, tag = "2")]
    pub fkblogeafjj: u32,
    #[prost(message, optional, tag = "4")]
    pub mpbfbikcfjb: ::core::option::Option<Pmgmanjbjok>,
    #[prost(uint32, tag = "3")]
    pub gdhmmfelcdh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pkofndohdip {
    #[prost(bool, tag = "4")]
    pub bkfkeaokjic: bool,
    #[prost(bool, tag = "14")]
    pub dadjoghhede: bool,
    #[prost(bool, tag = "1")]
    pub ooajonlnokc: bool,
    #[prost(bool, tag = "11")]
    pub aceoioacijo: bool,
    #[prost(bool, tag = "10")]
    pub kamifjjehjo: bool,
    #[prost(enumeration = "Ijicnomkdkc", tag = "5")]
    pub nenfhjdadja: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fkplcibblhf {
    #[prost(message, repeated, tag = "425")]
    pub ahllfkikean: ::prost::alloc::vec::Vec<DisplayAvatarDetailInfo>,
    #[prost(message, optional, tag = "7")]
    pub lhfhaeolcoe: ::core::option::Option<Fgfhnfkfjah>,
    #[prost(string, tag = "8")]
    pub ailinangjne: ::prost::alloc::string::String,
    #[prost(uint32, tag = "9")]
    pub world_level: u32,
    #[prost(uint32, tag = "5")]
    pub uid: u32,
    #[prost(bool, tag = "14")]
    pub efnhcoekdcn: bool,
    #[prost(message, repeated, tag = "13")]
    pub dinnmkgajhp: ::prost::alloc::vec::Vec<DisplayAvatarDetailInfo>,
    #[prost(uint32, tag = "10")]
    pub level: u32,
    #[prost(bool, tag = "11")]
    pub jpangkaaold: bool,
    #[prost(uint32, tag = "12")]
    pub mapjdadpkol: u32,
    #[prost(uint32, tag = "6")]
    pub gjlfhjlijon: u32,
    #[prost(enumeration = "PlatformType", tag = "15")]
    pub mbdjcknimop: i32,
    #[prost(uint32, tag = "1")]
    pub akfpfmgilao: u32,
    #[prost(message, optional, tag = "757")]
    pub afglladkmph: ::core::option::Option<Pkofndohdip>,
    #[prost(string, tag = "2")]
    pub ldfiofjhjja: ::prost::alloc::string::String,
    #[prost(string, tag = "3")]
    pub mjeebfegeai: ::prost::alloc::string::String,
    #[prost(string, tag = "4")]
    pub nickname: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Leldmbjfheh {
    #[prost(message, optional, tag = "7")]
    pub kmclngophda: ::core::option::Option<Hcdpijbnijp>,
    #[prost(string, tag = "10")]
    pub hiljemhhhnk: ::prost::alloc::string::String,
    #[prost(enumeration = "PlayingState", tag = "5")]
    pub gpgdedmpjla: i32,
    #[prost(message, optional, tag = "6")]
    pub cfmiklhjmle: ::core::option::Option<Alcoeanikil>,
    #[prost(bool, tag = "9")]
    pub gjdiplfecfa: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Djeahggegfg {
    #[prost(int64, tag = "4")]
    pub jpokkfheeph: i64,
    #[prost(message, optional, tag = "7")]
    pub kmclngophda: ::core::option::Option<Hcdpijbnijp>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eecfddbbomi {
    #[prost(message, optional, tag = "1")]
    pub kmclngophda: ::core::option::Option<Hcdpijbnijp>,
    #[prost(bool, tag = "4")]
    pub apdgnbhebif: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gimicolccfe {
    #[prost(message, optional, tag = "10")]
    pub lehcnanhjdp: ::core::option::Option<DisplayAvatarDetailInfo>,
    #[prost(message, optional, tag = "15")]
    pub kmclngophda: ::core::option::Option<Hcdpijbnijp>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kmmkhkplacb {
    #[prost(uint32, tag = "4")]
    pub gjlfhjlijon: u32,
    #[prost(uint32, tag = "2")]
    pub bhpghbbpfja: u32,
    #[prost(uint32, tag = "1")]
    pub level: u32,
    #[prost(uint32, tag = "12")]
    pub uid: u32,
    #[prost(string, tag = "14")]
    pub hiljemhhhnk: ::prost::alloc::string::String,
    #[prost(string, tag = "3")]
    pub nickname: ::prost::alloc::string::String,
    #[prost(string, tag = "11")]
    pub ldfiofjhjja: ::prost::alloc::string::String,
    #[prost(enumeration = "PlatformType", tag = "15")]
    pub mbdjcknimop: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ipgaakjmndb {
    #[prost(uint32, tag = "3")]
    pub opiljabgpip: u32,
    #[prost(uint32, tag = "11")]
    pub gppeglnngnj: u32,
    #[prost(uint32, tag = "10")]
    pub akeomnpojce: u32,
    #[prost(uint32, tag = "5")]
    pub jfjcjmpbhgk: u32,
    #[prost(message, repeated, tag = "15")]
    pub lineup_list: ::prost::alloc::vec::Vec<Alnhjbdnhob>,
    #[prost(string, tag = "8")]
    pub hiljemhhhnk: ::prost::alloc::string::String,
    #[prost(message, optional, tag = "14")]
    pub kmclngophda: ::core::option::Option<Hcdpijbnijp>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Egnkjnongnf {
    #[prost(uint32, tag = "8")]
    pub group_id: u32,
    #[prost(uint32, tag = "12")]
    pub gojmlalcfnb: u32,
    #[prost(message, optional, tag = "1687")]
    pub fncmegnmikb: ::core::option::Option<Nfpadiblelk>,
    #[prost(message, optional, tag = "1935")]
    pub ilpoicglogc: ::core::option::Option<Cgonejnkeeh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ackhamoibom {
    #[prost(message, optional, tag = "7")]
    pub ddkkcoofcjh: ::core::option::Option<Klmfmfanhle>,
    #[prost(uint32, tag = "3")]
    pub map_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pghmmbpamdh {
    #[prost(message, optional, tag = "1722")]
    pub copooimhhkn: ::core::option::Option<Ackhamoibom>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lcphkmanjbp {
    #[prost(uint32, tag = "9")]
    pub jlekocjhldk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jimggnmafcf {
    #[prost(uint32, tag = "13")]
    pub meekkgnihle: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dghhkmhalkn {
    #[prost(enumeration = "DevelopmentType", tag = "12")]
    pub laljghbkpoj: i32,
    #[prost(int64, tag = "3")]
    pub time: i64,
    #[prost(message, optional, tag = "1861")]
    pub ophibcfdelb: ::core::option::Option<Lcphkmanjbp>,
    #[prost(message, optional, tag = "86")]
    pub gfocmnbpigg: ::core::option::Option<Jimggnmafcf>,
    #[prost(uint32, tag = "555")]
    pub ckondfhadld: u32,
    #[prost(uint32, tag = "1899")]
    pub gmemceibfek: u32,
    #[prost(uint32, tag = "1647")]
    pub cfknmjlabhg: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nhfajfplkep {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pbfkjlnnnim {
    #[prost(message, repeated, tag = "7")]
    pub amgpdgdnlgd: ::prost::alloc::vec::Vec<Leldmbjfheh>,
    #[prost(message, repeated, tag = "4")]
    pub domnlbiijfb: ::prost::alloc::vec::Vec<Hcdpijbnijp>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mkohepaockm {
    #[prost(uint32, tag = "14")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ekediceldll {
    #[prost(message, optional, tag = "14")]
    pub iikiicbkejc: ::core::option::Option<Fkplcibblhf>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iagineehecc {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lkeklefbiga {
    #[prost(uint32, repeated, tag = "3")]
    pub pofadkjpkga: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "4")]
    pub phoaiflodlh: ::prost::alloc::vec::Vec<Djeahggegfg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kaiacgkmfmd {
    #[prost(enumeration = "Lcncckjbfip", tag = "5")]
    pub source: i32,
    #[prost(uint32, tag = "7")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jpigibchdpl {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(uint32, tag = "6")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iajkokcdkfb {
    #[prost(message, optional, tag = "12")]
    pub abfcjklbneb: ::core::option::Option<Djeahggegfg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lhhgibhbpld {
    #[prost(bool, tag = "3")]
    pub ojpjjpbbhac: bool,
    #[prost(uint32, tag = "13")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pggeijcemjg {
    #[prost(bool, tag = "15")]
    pub ojpjjpbbhac: bool,
    #[prost(uint32, tag = "4")]
    pub uid: u32,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(message, optional, tag = "9")]
    pub ggapfljfiic: ::core::option::Option<Leldmbjfheh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hkkoenefpml {
    #[prost(message, optional, tag = "3")]
    pub ggapfljfiic: ::core::option::Option<Leldmbjfheh>,
    #[prost(uint32, tag = "4")]
    pub uid: u32,
    #[prost(bool, tag = "9")]
    pub ojpjjpbbhac: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bphaejeckep {
    #[prost(uint32, tag = "5")]
    pub dhifhbhkama: u32,
    #[prost(uint32, tag = "3")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hlhakckjjce {
    #[prost(uint32, tag = "14")]
    pub uid: u32,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ogdcmopplhc {
    #[prost(uint32, tag = "10")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mfmihkdnlla {
    #[prost(uint32, tag = "7")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ncjmpajhedi {
    #[prost(message, optional, tag = "7")]
    pub black_info: ::core::option::Option<Hcdpijbnijp>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gafgaoheile {
    #[prost(uint32, tag = "12")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Epcnicchome {
    #[prost(bool, tag = "15")]
    pub gjpkpgkggeo: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lbfnokpajbn {
    #[prost(message, repeated, tag = "9")]
    pub hpejfncejlj: ::prost::alloc::vec::Vec<Eecfddbbomi>,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fikepbhhcfp {
    #[prost(uint32, tag = "13")]
    pub uid: u32,
    #[prost(string, tag = "14")]
    pub hiljemhhhnk: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ceiblkjgdnh {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(uint32, tag = "5")]
    pub uid: u32,
    #[prost(string, tag = "13")]
    pub hiljemhhhnk: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nnjncmenmni {
    #[prost(uint32, tag = "4")]
    pub uid: u32,
    #[prost(uint32, tag = "11")]
    pub celpologjje: u32,
    #[prost(string, tag = "9")]
    pub gbaadbhmpbn: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mhjjmjjfjii {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jodblffbapp {
    #[prost(uint32, tag = "12")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dgpmcnceogo {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(uint32, tag = "1")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Abcjhaangck {
    #[prost(uint32, repeated, tag = "1")]
    pub fciodbhnflg: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "5")]
    pub gjpkpgkggeo: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kbkdmpbemea {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "8")]
    pub bimcedmhbgi: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "14")]
    pub mifgjdnhlai: ::prost::alloc::vec::Vec<Hcdpijbnijp>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kkjffppnlka {
    #[prost(bool, tag = "6")]
    pub gjpkpgkggeo: bool,
    #[prost(bool, tag = "11")]
    pub ifnggbcjmjb: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dmhpmbogjco {
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "2")]
    pub bimojojomfc: ::prost::alloc::vec::Vec<Gimicolccfe>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Flppccanpib {
    #[prost(uint32, tag = "9")]
    pub ckondfhadld: u32,
    #[prost(uint32, tag = "10")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Medpekoinhf {
    #[prost(uint32, tag = "4")]
    pub uid: u32,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(uint32, tag = "6")]
    pub ckondfhadld: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hocnfcfafdl {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ondaafcogmh {
    #[prost(message, optional, tag = "10")]
    pub jkgibnfbgol: ::core::option::Option<Gimicolccfe>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gdddeffbkgi {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lccpaknaoja {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(uint32, tag = "12")]
    pub acoeppdaahd: u32,
    #[prost(uint32, tag = "1")]
    pub dgcbnpalhoo: u32,
    #[prost(uint32, tag = "3")]
    pub kakehjlcbeh: u32,
    #[prost(uint32, repeated, tag = "9")]
    pub hfpkfgilnpl: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gbfnoiflloi {
    #[prost(uint32, tag = "4")]
    pub acoeppdaahd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fbpbglmekin {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Piofaddfomj {
    #[prost(message, repeated, tag = "2")]
    pub mnpbjojpbeb: ::prost::alloc::vec::Vec<Kmmkhkplacb>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(message, optional, tag = "8")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hojgnacgiek {
    #[prost(message, optional, tag = "11")]
    pub jkgibnfbgol: ::core::option::Option<Gimicolccfe>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eompkfkmjla {
    #[prost(enumeration = "PlatformType", tag = "3")]
    pub mbdjcknimop: i32,
    #[prost(string, repeated, tag = "14")]
    pub fpkjigmbkij: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hfjhmlmhedn {
    #[prost(message, repeated, tag = "4")]
    pub hpejfncejlj: ::prost::alloc::vec::Vec<Hcdpijbnijp>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ggpjadkiagb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Defdbbngida {
    #[prost(bool, tag = "15")]
    pub hjdfeckecfk: bool,
    #[prost(uint32, repeated, tag = "7")]
    pub fmemngjhmha: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "3")]
    pub imhbcoepfeh: bool,
    #[prost(uint32, repeated, tag = "11")]
    pub iiacclafhnc: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Akllnhlcjbn {
    #[prost(bool, tag = "4")]
    pub moaffkjljlm: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oogemmcicom {
    #[prost(bool, tag = "13")]
    pub moaffkjljlm: bool,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bfamkbgmjkb {
    #[prost(uint32, tag = "11")]
    pub uid: u32,
    #[prost(bool, tag = "6")]
    pub ffaddfjeeee: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jdmpjlaeoac {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(bool, tag = "8")]
    pub ffaddfjeeee: bool,
    #[prost(uint32, tag = "2")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dhlolcdolce {
    #[prost(bool, tag = "14")]
    pub gjpkpgkggeo: bool,
    #[prost(uint32, repeated, tag = "3")]
    pub bkmibolkabk: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "15")]
    pub oligkfnjkma: u32,
    #[prost(enumeration = "AssistAvatarType", tag = "10")]
    pub hpfpejhoiec: i32,
    #[prost(uint32, repeated, tag = "9")]
    pub fmgdhkanjmo: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hbckejbdgcn {
    #[prost(message, repeated, tag = "14")]
    pub bimojojomfc: ::prost::alloc::vec::Vec<Gimicolccfe>,
    #[prost(uint32, tag = "13")]
    pub oligkfnjkma: u32,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iabjdikhccb {
    #[prost(uint32, tag = "2")]
    pub meekkgnihle: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jodjaiaknpe {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "7")]
    pub dpagjbimpdf: ::prost::alloc::vec::Vec<Ipgaakjmndb>,
    #[prost(bool, tag = "11")]
    pub eblmmmbeola: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Foghglmpiod {
    #[prost(uint32, tag = "1")]
    pub meekkgnihle: u32,
    #[prost(uint32, tag = "10")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Noehjljhbil {
    #[prost(uint32, tag = "10")]
    pub meekkgnihle: u32,
    #[prost(uint32, tag = "3")]
    pub uid: u32,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "14")]
    pub oclkehdgack: ::prost::alloc::vec::Vec<DisplayAvatarDetailInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mddjbhjihif {
    #[prost(enumeration = "Ijicnomkdkc", tag = "4")]
    pub ipnhjoomhdm: i32,
    #[prost(uint32, tag = "11")]
    pub uid: u32,
    #[prost(uint32, tag = "14")]
    pub group_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kfnfapoiejl {
    #[prost(uint32, tag = "3")]
    pub uid: u32,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(message, optional, tag = "376")]
    pub cmilbciodhf: ::core::option::Option<Egnkjnongnf>,
    #[prost(message, optional, tag = "223")]
    pub mhhmfjkljcm: ::core::option::Option<Pghmmbpamdh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ddmiblfkkgf {
    #[prost(uint32, tag = "2")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Njafenfmgkk {
    #[prost(message, repeated, tag = "12")]
    pub jnegaepmika: ::prost::alloc::vec::Vec<Dghhkmhalkn>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(uint32, tag = "10")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetGachaInfoCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GachaCeilingAvatar {
    #[prost(uint32, tag = "3")]
    pub repeated_cnt: u32,
    #[prost(uint32, tag = "9")]
    pub avatar_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bpbpjaelpdk {
    #[prost(bool, tag = "5")]
    pub ifabbnpkeom: bool,
    #[prost(message, repeated, tag = "9")]
    pub avatar_list: ::prost::alloc::vec::Vec<GachaCeilingAvatar>,
    #[prost(uint32, tag = "4")]
    pub pbennaoiedj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GachaInfo {
    #[prost(int64, tag = "7")]
    pub end_time: i64,
    #[prost(uint32, repeated, tag = "11")]
    pub fekgcflfbfl: ::prost::alloc::vec::Vec<u32>,
    #[prost(string, tag = "4")]
    pub njabckkjnch: ::prost::alloc::string::String,
    #[prost(message, optional, tag = "5")]
    pub kepnkiihnnn: ::core::option::Option<Bpbpjaelpdk>,
    #[prost(int64, tag = "1")]
    pub begin_time: i64,
    #[prost(uint32, tag = "10")]
    pub gacha_id: u32,
    #[prost(uint32, tag = "14")]
    pub aghoimajfei: u32,
    #[prost(string, tag = "6")]
    pub bnkkigfopjg: ::prost::alloc::string::String,
    #[prost(uint32, tag = "9")]
    pub ddmceobbmhb: u32,
    #[prost(uint32, repeated, tag = "13")]
    pub imckncmmnkp: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetGachaInfoScRsp {
    #[prost(uint32, tag = "12")]
    pub ngpbidhjaah: u32,
    #[prost(uint32, tag = "7")]
    pub jjaikhmieej: u32,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "9")]
    pub dpdbaaocpdf: ::prost::alloc::vec::Vec<GachaInfo>,
    #[prost(uint32, tag = "14")]
    pub today_total_gacha_cnt: u32,
    #[prost(uint32, tag = "8")]
    pub gacha_random: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DoGachaCsReq {
    #[prost(uint32, tag = "10")]
    pub gacha_num: u32,
    #[prost(uint32, tag = "5")]
    pub gacha_id: u32,
    #[prost(uint32, tag = "9")]
    pub simulate_magic: u32,
    #[prost(uint32, tag = "4")]
    pub gacha_random: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GachaItem {
    #[prost(message, optional, tag = "1")]
    pub ibeeoiikkdf: ::core::option::Option<ItemList>,
    #[prost(bool, tag = "10")]
    pub is_new: bool,
    #[prost(message, optional, tag = "6")]
    pub gacha_item: ::core::option::Option<Item>,
    #[prost(message, optional, tag = "9")]
    pub oopkehibdfd: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DoGachaScRsp {
    #[prost(uint32, tag = "15")]
    pub pbennaoiedj: u32,
    #[prost(uint32, tag = "4")]
    pub gacha_num: u32,
    #[prost(uint32, tag = "12")]
    pub gacha_id: u32,
    #[prost(uint32, tag = "1")]
    pub today_total_gacha_cnt: u32,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(uint32, tag = "8")]
    pub mibgeefgaoo: u32,
    #[prost(uint32, tag = "5")]
    pub ddmceobbmhb: u32,
    #[prost(message, repeated, tag = "9")]
    pub bcainmnchaj: ::prost::alloc::vec::Vec<GachaItem>,
    #[prost(uint32, tag = "7")]
    pub aghoimajfei: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Knmcocnneee {
    #[prost(uint32, tag = "2")]
    pub akfbahnpbcf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hdnppkaijjo {
    #[prost(message, optional, tag = "3")]
    pub kepnkiihnnn: ::core::option::Option<Bpbpjaelpdk>,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(uint32, tag = "13")]
    pub akfbahnpbcf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oaonhmfknhc {
    #[prost(uint32, tag = "13")]
    pub akfbahnpbcf: u32,
    #[prost(uint32, tag = "5")]
    pub ckondfhadld: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lfcplkpkjdp {
    #[prost(uint32, tag = "11")]
    pub ckondfhadld: u32,
    #[prost(message, optional, tag = "12")]
    pub kepnkiihnnn: ::core::option::Option<Bpbpjaelpdk>,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(message, optional, tag = "8")]
    pub oopkehibdfd: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "15")]
    pub akfbahnpbcf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gnhmdhcfafl {
    #[prost(uint32, tag = "6")]
    pub fdodehmnpjp: u32,
    #[prost(bool, tag = "3")]
    pub jbhnkghdoea: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iipbnjmnfhl {
    #[prost(enumeration = "Iclildeepli", tag = "13")]
    pub gkoknchlklh: i32,
    #[prost(bool, tag = "1")]
    pub iiafnkofhbl: bool,
    #[prost(enumeration = "Lnofmmmbfch", tag = "6")]
    pub step: i32,
    #[prost(bool, tag = "11")]
    pub jpclfcibhmj: bool,
    #[prost(uint32, tag = "15")]
    pub gblgdppifpe: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bpgmbajhnha {
    #[prost(uint32, tag = "11")]
    pub gblgdppifpe: u32,
    #[prost(uint32, tag = "13")]
    pub foodlcbgekp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jpjhfjbdlkn {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fodobjclcoa {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(enumeration = "Iacaoojfcgh", tag = "15")]
    pub pjjgphicalh: i32,
    #[prost(message, repeated, tag = "7")]
    pub ofklphfhgij: ::prost::alloc::vec::Vec<Iipbnjmnfhl>,
    #[prost(message, repeated, tag = "2")]
    pub eifnmmnalfk: ::prost::alloc::vec::Vec<Gnhmdhcfafl>,
    #[prost(message, repeated, tag = "14")]
    pub dpnnglkchcf: ::prost::alloc::vec::Vec<Bpgmbajhnha>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lbhfgcfkjmi {
    #[prost(enumeration = "Iclildeepli", tag = "10")]
    pub mpmjginkomb: i32,
    #[prost(uint32, tag = "15")]
    pub bpdkopmkjmm: u32,
    #[prost(uint32, tag = "8")]
    pub gblgdppifpe: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Klmojfjbajd {
    #[prost(uint32, tag = "4")]
    pub gblgdppifpe: u32,
    #[prost(enumeration = "Iclildeepli", tag = "5")]
    pub aiggoipnafh: i32,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lbamdjjiiaa {
    #[prost(uint32, tag = "2")]
    pub gblgdppifpe: u32,
    #[prost(uint32, tag = "6")]
    pub bpdkopmkjmm: u32,
    #[prost(message, optional, tag = "7")]
    pub item_list: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jpbojhnlgei {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(uint32, tag = "6")]
    pub gblgdppifpe: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Meadblihlbo {
    #[prost(uint32, tag = "7")]
    pub gblgdppifpe: u32,
    #[prost(uint32, tag = "13")]
    pub fdodehmnpjp: u32,
    #[prost(uint32, tag = "10")]
    pub bpdkopmkjmm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mklpcceajme {
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(uint32, tag = "1")]
    pub fdodehmnpjp: u32,
    #[prost(uint32, tag = "15")]
    pub gblgdppifpe: u32,
    #[prost(message, optional, tag = "10")]
    pub mpkghigdoaj: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lkgcbijijhm {
    #[prost(message, repeated, tag = "1")]
    pub kfckbhbnakb: ::prost::alloc::vec::Vec<Gnhmdhcfafl>,
    #[prost(message, repeated, tag = "8")]
    pub niphcodaogf: ::prost::alloc::vec::Vec<Iipbnjmnfhl>,
    #[prost(enumeration = "Iacaoojfcgh", tag = "9")]
    pub pjjgphicalh: i32,
    #[prost(message, repeated, tag = "4")]
    pub dpnnglkchcf: ::prost::alloc::vec::Vec<Bpgmbajhnha>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bgeobppjcel {
    #[prost(message, optional, tag = "14")]
    pub japcgimljka: ::core::option::Option<Bpgmbajhnha>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Accbdleegkp {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(message, optional, tag = "3")]
    pub japcgimljka: ::core::option::Option<Bpgmbajhnha>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lkikjeioeih {
    #[prost(uint32, repeated, tag = "14")]
    pub ejekbphbomk: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "10")]
    pub dpdkinhmfno: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pfephlpeoea {
    #[prost(bool, tag = "14")]
    pub balnhbocnae: bool,
    #[prost(uint32, tag = "9")]
    pub meekkgnihle: u32,
    #[prost(uint32, tag = "12")]
    pub inpelkijhpa: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct HeliobusChallengeLineup {
    #[prost(uint32, tag = "9")]
    pub skill_id: u32,
    #[prost(uint32, tag = "15")]
    pub group_id: u32,
    #[prost(uint32, repeated, tag = "7")]
    pub avatar_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kfdgbbplndo {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hjhjhigdbpo {
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
    #[prost(uint32, tag = "14")]
    pub phase: u32,
    #[prost(uint32, tag = "12")]
    pub dniabdhdcaj: u32,
    #[prost(uint32, tag = "13")]
    pub level: u32,
    #[prost(uint32, tag = "9")]
    pub khladbdcmcm: u32,
    #[prost(message, repeated, tag = "10")]
    pub nfbpcoinlno: ::prost::alloc::vec::Vec<Nlmkkkklpcb>,
    #[prost(message, repeated, tag = "6")]
    pub fjejoelocbd: ::prost::alloc::vec::Vec<HeliobusChallengeLineup>,
    #[prost(message, optional, tag = "7")]
    pub ddbhhogcjbd: ::core::option::Option<Lkikjeioeih>,
    #[prost(message, repeated, tag = "8")]
    pub aaohdgdimml: ::prost::alloc::vec::Vec<Pfephlpeoea>,
    #[prost(uint32, tag = "3")]
    pub bgiiepjmjbb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lddlljefmea {
    #[prost(uint32, tag = "2")]
    pub djlgelljihc: u32,
    #[prost(message, repeated, tag = "13")]
    pub kbpnlkabfij: ::prost::alloc::vec::Vec<Lddlljefmea>,
    #[prost(uint32, tag = "9")]
    pub lmnnmagcigf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nlmkkkklpcb {
    #[prost(uint32, tag = "14")]
    pub gijclkpnlad: u32,
    #[prost(uint32, tag = "6")]
    pub bkfkdggpfoi: u32,
    #[prost(uint32, tag = "12")]
    pub oajfennaipn: u32,
    #[prost(uint32, tag = "1")]
    pub fahbgmkjfhj: u32,
    #[prost(uint32, tag = "3")]
    pub blhigecdkah: u32,
    #[prost(bool, tag = "7")]
    pub lddohnohicg: bool,
    #[prost(bool, tag = "11")]
    pub madccgllbkj: bool,
    #[prost(message, repeated, tag = "13")]
    pub llkioealggn: ::prost::alloc::vec::Vec<Lddlljefmea>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Acdkoblagno {
    #[prost(uint32, tag = "3")]
    pub fahbgmkjfhj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lfmnkkonicd {
    #[prost(uint32, tag = "2")]
    pub fahbgmkjfhj: u32,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lpkaimbaehk {
    #[prost(uint32, tag = "9")]
    pub bkfkdggpfoi: u32,
    #[prost(uint32, tag = "3")]
    pub gijclkpnlad: u32,
    #[prost(uint32, tag = "5")]
    pub fahbgmkjfhj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fkmlflaidhb {
    #[prost(message, optional, tag = "4")]
    pub goglcamfnjk: ::core::option::Option<Nlmkkkklpcb>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hccoahjipij {
    #[prost(uint32, tag = "14")]
    pub fahbgmkjfhj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eklbljpjljj {
    #[prost(bool, tag = "9")]
    pub madccgllbkj: bool,
    #[prost(uint32, tag = "2")]
    pub fahbgmkjfhj: u32,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jbgoemokcon {
    #[prost(uint32, tag = "10")]
    pub fahbgmkjfhj: u32,
    #[prost(uint32, tag = "3")]
    pub lmnnmagcigf: u32,
    #[prost(uint32, tag = "2")]
    pub ehijmlfmpph: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gpogkpmnlom {
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
    #[prost(message, optional, tag = "3")]
    pub goglcamfnjk: ::core::option::Option<Nlmkkkklpcb>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fhaoallfkdk {
    #[prost(message, repeated, tag = "4")]
    pub bnlmonoiamn: ::prost::alloc::vec::Vec<Nlmkkkklpcb>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pcdhiclomff {
    #[prost(uint32, tag = "3")]
    pub dniabdhdcaj: u32,
    #[prost(message, repeated, tag = "15")]
    pub bnlmonoiamn: ::prost::alloc::vec::Vec<Nlmkkkklpcb>,
    #[prost(uint32, tag = "11")]
    pub bgiiepjmjbb: u32,
    #[prost(uint32, tag = "1")]
    pub phase: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ldhhkdkkfej {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ohakkadbhml {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, tag = "14")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eknabbgopkc {
    #[prost(uint32, tag = "9")]
    pub skill_id: u32,
    #[prost(uint32, tag = "3")]
    pub dpdkinhmfno: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pbffeakcoke {
    #[prost(uint32, tag = "3")]
    pub skill_id: u32,
    #[prost(uint32, repeated, tag = "9")]
    pub avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "7")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cpbegbmcbli {
    #[prost(message, optional, tag = "6")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, tag = "2")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Icagmhaopme {
    #[prost(uint32, tag = "7")]
    pub skill_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Omkgmpikbbi {
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(uint32, tag = "9")]
    pub skill_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ckeppnbmkok {
    #[prost(message, optional, tag = "6")]
    pub pakaglmionh: ::core::option::Option<Pfephlpeoea>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hofmdagekid {
    #[prost(message, optional, tag = "6")]
    pub lineup: ::core::option::Option<HeliobusChallengeLineup>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hjbllaolfen {
    #[prost(uint32, tag = "11")]
    pub djghfeokhlk: u32,
    #[prost(bool, tag = "15")]
    pub iijpdkfdakn: bool,
    #[prost(uint32, tag = "14")]
    pub kdefckpliph: u32,
    #[prost(uint32, tag = "4")]
    pub prop_entity_id: u32,
    #[prost(uint32, tag = "12")]
    pub skill_id: u32,
    #[prost(uint32, repeated, tag = "1")]
    pub avatar_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Meogdnjdhlm {
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetBagCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Equipment {
    #[prost(uint32, tag = "13")]
    pub rank: u32,
    #[prost(uint32, tag = "14")]
    pub base_avatar_id: u32,
    #[prost(uint32, tag = "5")]
    pub promotion: u32,
    #[prost(uint32, tag = "8")]
    pub unique_id: u32,
    #[prost(uint32, tag = "3")]
    pub level: u32,
    #[prost(bool, tag = "12")]
    pub is_protected: bool,
    #[prost(uint32, tag = "7")]
    pub exp: u32,
    #[prost(uint32, tag = "6")]
    pub imhlbinfhlh: u32,
    #[prost(uint32, tag = "2")]
    pub tid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Relic {
    #[prost(uint32, tag = "10")]
    pub base_avatar_id: u32,
    #[prost(uint32, tag = "8")]
    pub level: u32,
    #[prost(bool, tag = "4")]
    pub is_protected: bool,
    #[prost(uint32, tag = "9")]
    pub exp: u32,
    #[prost(bool, tag = "1")]
    pub kjgemkmeikm: bool,
    #[prost(uint32, tag = "13")]
    pub tid: u32,
    #[prost(uint32, tag = "15")]
    pub main_affix_id: u32,
    #[prost(uint32, tag = "14")]
    pub imhlbinfhlh: u32,
    #[prost(uint32, tag = "2")]
    pub unique_id: u32,
    #[prost(message, repeated, tag = "12")]
    pub sub_affix_list: ::prost::alloc::vec::Vec<RelicAffix>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Afpohdndlni {
    #[prost(uint32, tag = "12")]
    pub tid: u32,
    #[prost(uint32, tag = "15")]
    pub num: u32,
    #[prost(uint64, tag = "5")]
    pub moklccnpbic: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WaitDelResource {
    #[prost(uint32, tag = "12")]
    pub tid: u32,
    #[prost(uint32, tag = "11")]
    pub num: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fnmjhmiefjg {
    #[prost(uint64, tag = "7")]
    pub moklccnpbic: u64,
    #[prost(uint32, tag = "6")]
    pub num: u32,
    #[prost(uint32, tag = "3")]
    pub tid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetBagScRsp {
    #[prost(message, repeated, tag = "15")]
    pub equipment_list: ::prost::alloc::vec::Vec<Equipment>,
    #[prost(message, repeated, tag = "7")]
    pub jiljjaiepgc: ::prost::alloc::vec::Vec<Afpohdndlni>,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(enumeration = "TurnFoodSwitchType", repeated, tag = "10")]
    pub pblokejlljl: ::prost::alloc::vec::Vec<i32>,
    #[prost(uint32, repeated, tag = "11")]
    pub cbgpcmkinon: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "2")]
    pub hodalnhhjhh: ::prost::alloc::vec::Vec<Fnmjhmiefjg>,
    #[prost(uint32, tag = "6")]
    pub igefoodgboc: u32,
    #[prost(message, repeated, tag = "8")]
    pub relic_list: ::prost::alloc::vec::Vec<Relic>,
    #[prost(message, repeated, tag = "1")]
    pub abmeaplgoop: ::prost::alloc::vec::Vec<PileItem>,
    #[prost(uint32, repeated, tag = "13")]
    pub fpnjmledocb: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "12")]
    pub wait_del_resource_list: ::prost::alloc::vec::Vec<WaitDelResource>,
    #[prost(message, repeated, tag = "5")]
    pub hpocanfjoli: ::prost::alloc::vec::Vec<Afpohdndlni>,
    #[prost(message, repeated, tag = "14")]
    pub oladbjnpdkp: ::prost::alloc::vec::Vec<Fnmjhmiefjg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PromoteEquipmentCsReq {
    #[prost(message, optional, tag = "13")]
    pub cost_data: ::core::option::Option<ItemCostData>,
    #[prost(uint32, tag = "6")]
    pub equipment_unique_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PromoteEquipmentScRsp {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LockEquipmentCsReq {
    #[prost(bool, tag = "9")]
    pub is_lock: bool,
    #[prost(uint32, repeated, tag = "13")]
    pub equipment_unique_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LockEquipmentScRsp {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UseItemCsReq {
    #[prost(uint32, tag = "5")]
    pub jpghfnpcdjg: u32,
    #[prost(uint32, tag = "4")]
    pub innccponhil: u32,
    #[prost(bool, tag = "12")]
    pub mgplcidgelb: bool,
    #[prost(uint32, tag = "13")]
    pub base_avatar_id: u32,
    #[prost(uint32, tag = "14")]
    pub oipebhlkhpe: u32,
    #[prost(enumeration = "AvatarType", tag = "9")]
    pub eddhnohbgfo: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UseItemScRsp {
    #[prost(uint32, tag = "15")]
    pub naahpoemchd: u32,
    #[prost(uint32, tag = "10")]
    pub innccponhil: u32,
    #[prost(uint64, tag = "5")]
    pub omkamjmjdfi: u64,
    #[prost(message, optional, tag = "7")]
    pub return_data: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "12")]
    pub oipebhlkhpe: u32,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hcabgmecbhg {
    #[prost(message, optional, tag = "5")]
    pub cost_data: ::core::option::Option<ItemCostData>,
    #[prost(uint32, tag = "3")]
    pub equipment_unique_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fnjfiedeemi {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ExpUpEquipmentCsReq {
    #[prost(uint32, tag = "9")]
    pub equipment_unique_id: u32,
    #[prost(message, optional, tag = "2")]
    pub cost_data: ::core::option::Option<ItemCostData>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ExpUpEquipmentScRsp {
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "15")]
    pub return_item_list: ::prost::alloc::vec::Vec<PileItem>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gphhgbcheff {
    #[prost(uint32, tag = "8")]
    pub count: u32,
    #[prost(message, optional, tag = "3")]
    pub jimininpocf: ::core::option::Option<ItemCostData>,
    #[prost(uint32, tag = "1")]
    pub eohobbhejfj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kgggpcdjfnh {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(uint32, tag = "3")]
    pub count: u32,
    #[prost(message, optional, tag = "15")]
    pub return_item_list: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "8")]
    pub eohobbhejfj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hpopfaeklcb {
    #[prost(uint32, tag = "11")]
    pub main_affix_id: u32,
    #[prost(uint32, tag = "4")]
    pub ldmihcbkace: u32,
    #[prost(uint32, tag = "10")]
    pub count: u32,
    #[prost(uint32, tag = "3")]
    pub eohobbhejfj: u32,
    #[prost(message, optional, tag = "13")]
    pub jimininpocf: ::core::option::Option<ItemCostData>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Momjhjlgcbb {
    #[prost(uint32, tag = "13")]
    pub eohobbhejfj: u32,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(message, optional, tag = "1")]
    pub return_item_list: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ibnlloghheg {
    #[prost(message, optional, tag = "10")]
    pub cost_data: ::core::option::Option<ItemCostData>,
    #[prost(uint32, tag = "5")]
    pub llepdadmfdo: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eglljcijohe {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "12")]
    pub return_item_list: ::prost::alloc::vec::Vec<PileItem>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jdofjkdapab {
    #[prost(uint32, tag = "10")]
    pub llepdadmfdo: u32,
    #[prost(bool, tag = "9")]
    pub is_lock: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Odohmdemdcf {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, tag = "15")]
    pub llepdadmfdo: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kimeanlecfm {
    #[prost(uint32, tag = "14")]
    pub llepdadmfdo: u32,
    #[prost(bool, tag = "4")]
    pub kmogkhoklkf: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oonnnkonnhd {
    #[prost(bool, tag = "5")]
    pub kmogkhoklkf: bool,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Makjgdcnnkl {
    #[prost(message, optional, tag = "5")]
    pub cost_data: ::core::option::Option<ItemCostData>,
    #[prost(bool, tag = "3")]
    pub aeobdfpciil: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gkmmljfeghl {
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(message, optional, tag = "4")]
    pub return_item_list: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RechargeSuccNotify {
    #[prost(message, optional, tag = "14")]
    pub item_list: ::core::option::Option<ItemList>,
    #[prost(string, tag = "1")]
    pub product_id: ::prost::alloc::string::String,
    #[prost(uint64, tag = "7")]
    pub month_card_outdate_time: u64,
    #[prost(string, tag = "4")]
    pub channel_order_no: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Idomnajkbbf {
    #[prost(uint32, tag = "11")]
    pub num: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ExchangeHcoinScRsp {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(uint32, tag = "12")]
    pub num: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lieahokdpld {
    #[prost(uint32, tag = "2")]
    pub gmemceibfek: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cdinchmmhah {
    #[prost(uint32, repeated, tag = "10")]
    pub iehgchcjijh: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ccelnlfmlcp {
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "13")]
    pub hodalnhhjhh: ::prost::alloc::vec::Vec<Fnmjhmiefjg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Inaeabkaelf {
    #[prost(uint32, tag = "9")]
    pub hchknoeifha: u32,
    #[prost(uint32, tag = "14")]
    pub ohleaabagkf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cgdfilneajj {
    #[prost(message, repeated, tag = "15")]
    pub bohpdcejdmm: ::prost::alloc::vec::Vec<Inaeabkaelf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hbcclgnbmpb {
    #[prost(message, optional, tag = "14")]
    pub lbafippmlam: ::core::option::Option<Inaeabkaelf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kcjnflgppff {
    #[prost(uint32, tag = "11")]
    pub cinnfkemekk: u32,
    #[prost(uint32, tag = "1")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "9")]
    pub bmnpahoebpb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eflongdjkdk {
    #[prost(uint32, tag = "7")]
    pub cinnfkemekk: u32,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ighgjogagkb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Njmaiklmocp {
    #[prost(uint32, repeated, tag = "1")]
    pub laepjjilcnm: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jaoohfcooka {
    #[prost(uint32, tag = "14")]
    pub gifbaoolifn: u32,
    #[prost(bool, tag = "9")]
    pub coahclkddlp: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jiddkogigmh {
    #[prost(bool, tag = "12")]
    pub coahclkddlp: bool,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(uint32, tag = "15")]
    pub gifbaoolifn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Afoalpkcinh {
    #[prost(uint32, tag = "10")]
    pub gifbaoolifn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Acgpnfcdgoo {
    #[prost(enumeration = "TurnFoodSwitchType", repeated, tag = "1")]
    pub pblokejlljl: ::prost::alloc::vec::Vec<i32>,
    #[prost(uint32, repeated, tag = "10")]
    pub fpnjmledocb: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bhggelafged {
    #[prost(enumeration = "TurnFoodSwitchType", tag = "12")]
    pub dbmepfhdmbd: i32,
    #[prost(bool, tag = "6")]
    pub acjodjlopcj: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pajgemeidka {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(enumeration = "TurnFoodSwitchType", tag = "3")]
    pub dbmepfhdmbd: i32,
    #[prost(bool, tag = "2")]
    pub acjodjlopcj: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fhhkjcdpmah {
    #[prost(bool, tag = "11")]
    pub mimodkgedbc: bool,
    #[prost(message, repeated, tag = "12")]
    pub oenplhaeobj: ::prost::alloc::vec::Vec<PileItem>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Blfoadapdgf {
    #[prost(uint32, tag = "10")]
    pub kbpnejphkja: u32,
    #[prost(uint32, tag = "4")]
    pub kijlkaefgmp: u32,
    #[prost(uint32, tag = "2")]
    pub ihglddomppd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ggkfccnodga {
    #[prost(uint32, tag = "1")]
    pub ihglddomppd: u32,
    #[prost(uint32, tag = "2")]
    pub coileebpaei: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bgihgmbdjdi {
    #[prost(uint32, tag = "8")]
    pub ckondfhadld: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hdadpfboico {
    #[prost(message, repeated, tag = "1")]
    pub ijpekakdege: ::prost::alloc::vec::Vec<Ggkfccnodga>,
    #[prost(message, repeated, tag = "15")]
    pub hjflpnlgjkk: ::prost::alloc::vec::Vec<Ggkfccnodga>,
    #[prost(message, repeated, tag = "4")]
    pub ogcdgokkkmc: ::prost::alloc::vec::Vec<Ggkfccnodga>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(uint32, tag = "14")]
    pub ckondfhadld: u32,
    #[prost(message, repeated, tag = "11")]
    pub iallogkmmkd: ::prost::alloc::vec::Vec<Blfoadapdgf>,
    #[prost(bool, tag = "7")]
    pub ekijgonkeng: bool,
    #[prost(message, repeated, tag = "6")]
    pub olbcpjobcfp: ::prost::alloc::vec::Vec<Blfoadapdgf>,
    #[prost(message, repeated, tag = "2")]
    pub cchkiblbgan: ::prost::alloc::vec::Vec<Ggkfccnodga>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hehaonbniao {
    #[prost(uint32, tag = "4")]
    pub id: u32,
    #[prost(uint32, tag = "10")]
    pub group_id: u32,
    #[prost(bool, tag = "3")]
    pub bbhkfblnbln: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ojcmmhldapi {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jbefcllcddd {
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(uint32, tag = "7")]
    pub pldiejopafk: u32,
    #[prost(message, repeated, tag = "11")]
    pub efnoehpidpi: ::prost::alloc::vec::Vec<Hehaonbniao>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Idhfbambohb {
    #[prost(uint32, tag = "8")]
    pub gleoplcnhjd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ohjepiddifg {
    #[prost(uint32, tag = "7")]
    pub gleoplcnhjd: u32,
    #[prost(uint32, tag = "2")]
    pub pldiejopafk: u32,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dapedkjioih {
    #[prost(uint32, repeated, tag = "3")]
    pub eaefpimipgf: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dbjiocpmnmb {
    #[prost(uint32, repeated, tag = "12")]
    pub ggibemopimm: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "3")]
    pub efnoehpidpi: ::prost::alloc::vec::Vec<Hehaonbniao>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ebnpbigeioc {
    #[prost(uint32, tag = "10")]
    pub kmmddbiolpf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hgnlfebpmga {
    #[prost(uint32, tag = "15")]
    pub kmmddbiolpf: u32,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetStageLineupCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StageLineup {
    #[prost(uint32, tag = "9")]
    pub stage_type: u32,
    #[prost(uint32, tag = "15")]
    pub lineup_index: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetStageLineupScRsp {
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "10")]
    pub stage_lineup_list: ::prost::alloc::vec::Vec<StageLineup>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LineupAvatar {
    #[prost(uint32, tag = "13")]
    pub slot: u32,
    #[prost(message, optional, tag = "14")]
    pub sp: ::core::option::Option<AmountInfo>,
    #[prost(uint32, tag = "12")]
    pub satiety: u32,
    #[prost(uint32, tag = "2")]
    pub id: u32,
    #[prost(enumeration = "AvatarType", tag = "8")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "6")]
    pub hp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LineupInfo {
    #[prost(uint32, tag = "11")]
    pub plane_id: u32,
    #[prost(uint32, tag = "3")]
    pub djdbkfnekpf: u32,
    #[prost(message, repeated, tag = "15")]
    pub avatar_list: ::prost::alloc::vec::Vec<LineupAvatar>,
    #[prost(string, tag = "1")]
    pub name: ::prost::alloc::string::String,
    #[prost(uint32, tag = "4")]
    pub index: u32,
    #[prost(enumeration = "ExtraLineupType", tag = "13")]
    pub extra_lineup_type: i32,
    #[prost(bool, tag = "8")]
    pub is_virtual: bool,
    #[prost(uint32, tag = "7")]
    pub hpammbapokf: u32,
    #[prost(uint32, repeated, tag = "10")]
    pub hkbiidjenib: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "12")]
    pub pojohohkppa: bool,
    #[prost(uint32, tag = "6")]
    pub bpkggopoppf: u32,
    #[prost(uint32, tag = "9")]
    pub njjbfegnhjc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetCurLineupDataCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetCurLineupDataScRsp {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, optional, tag = "7")]
    pub lineup: ::core::option::Option<LineupInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct JoinLineupCsReq {
    #[prost(uint32, tag = "4")]
    pub index: u32,
    #[prost(bool, tag = "3")]
    pub is_virtual: bool,
    #[prost(enumeration = "ExtraLineupType", tag = "9")]
    pub extra_lineup_type: i32,
    #[prost(uint32, tag = "6")]
    pub base_avatar_id: u32,
    #[prost(uint32, tag = "11")]
    pub plane_id: u32,
    #[prost(uint32, tag = "14")]
    pub slot: u32,
    #[prost(enumeration = "AvatarType", tag = "15")]
    pub avatar_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct JoinLineupScRsp {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QuitLineupCsReq {
    #[prost(bool, tag = "1")]
    pub is_virtual: bool,
    #[prost(enumeration = "ExtraLineupType", tag = "8")]
    pub extra_lineup_type: i32,
    #[prost(uint32, tag = "13")]
    pub index: u32,
    #[prost(enumeration = "AvatarType", tag = "9")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "12")]
    pub base_avatar_id: u32,
    #[prost(uint32, tag = "6")]
    pub plane_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QuitLineupScRsp {
    #[prost(uint32, tag = "10")]
    pub plane_id: u32,
    #[prost(bool, tag = "3")]
    pub is_mainline: bool,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(uint32, tag = "6")]
    pub base_avatar_id: u32,
    #[prost(bool, tag = "7")]
    pub is_virtual: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SwapLineupCsReq {
    #[prost(uint32, tag = "4")]
    pub plane_id: u32,
    #[prost(uint32, tag = "5")]
    pub src_slot: u32,
    #[prost(uint32, tag = "2")]
    pub index: u32,
    #[prost(uint32, tag = "15")]
    pub dst_slot: u32,
    #[prost(bool, tag = "1")]
    pub is_virtual: bool,
    #[prost(enumeration = "ExtraLineupType", tag = "7")]
    pub extra_lineup_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SwapLineupScRsp {
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SyncLineupNotify {
    #[prost(message, optional, tag = "4")]
    pub lineup: ::core::option::Option<LineupInfo>,
    #[prost(enumeration = "SyncLineupReason", repeated, tag = "9")]
    pub reason_list: ::prost::alloc::vec::Vec<i32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetLineupAvatarDataCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LineupAvatarData {
    #[prost(uint32, tag = "5")]
    pub id: u32,
    #[prost(uint32, tag = "1")]
    pub hp: u32,
    #[prost(enumeration = "AvatarType", tag = "3")]
    pub avatar_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetLineupAvatarDataScRsp {
    #[prost(message, repeated, tag = "12")]
    pub avatar_data_list: ::prost::alloc::vec::Vec<LineupAvatarData>,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ChangeLineupLeaderCsReq {
    #[prost(uint32, tag = "14")]
    pub slot: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ChangeLineupLeaderScRsp {
    #[prost(uint32, tag = "12")]
    pub slot: u32,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SwitchLineupIndexCsReq {
    #[prost(uint32, tag = "10")]
    pub index: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SwitchLineupIndexScRsp {
    #[prost(uint32, tag = "10")]
    pub index: u32,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetLineupNameCsReq {
    #[prost(string, tag = "12")]
    pub name: ::prost::alloc::string::String,
    #[prost(uint32, tag = "10")]
    pub index: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetLineupNameScRsp {
    #[prost(uint32, tag = "8")]
    pub index: u32,
    #[prost(string, tag = "6")]
    pub name: ::prost::alloc::string::String,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetAllLineupDataCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetAllLineupDataScRsp {
    #[prost(message, repeated, tag = "4")]
    pub lineup_list: ::prost::alloc::vec::Vec<LineupInfo>,
    #[prost(uint32, tag = "11")]
    pub cur_index: u32,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VirtualLineupDestroyNotify {
    #[prost(uint32, tag = "9")]
    pub plane_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kcllnhmojig {
    #[prost(uint32, tag = "11")]
    pub slot: u32,
    #[prost(enumeration = "AvatarType", tag = "14")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "15")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReplaceLineupCsReq {
    #[prost(uint32, tag = "3")]
    pub index: u32,
    #[prost(uint32, tag = "6")]
    pub djdbkfnekpf: u32,
    #[prost(uint32, tag = "12")]
    pub hpammbapokf: u32,
    #[prost(bool, tag = "10")]
    pub is_virtual: bool,
    #[prost(uint32, tag = "2")]
    pub plane_id: u32,
    #[prost(message, repeated, tag = "5")]
    pub jkifflmenfn: ::prost::alloc::vec::Vec<Kcllnhmojig>,
    #[prost(enumeration = "ExtraLineupType", tag = "9")]
    pub extra_lineup_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReplaceLineupScRsp {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ExtraLineupDestroyNotify {
    #[prost(enumeration = "ExtraLineupType", tag = "10")]
    pub extra_lineup_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetMailCsReq {
    #[prost(uint32, tag = "9")]
    pub ppeoeihgbao: u32,
    #[prost(uint32, tag = "12")]
    pub gfjfanhpppf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ClientMail {
    #[prost(bool, tag = "6")]
    pub is_read: bool,
    #[prost(int64, tag = "7")]
    pub expire_time: i64,
    #[prost(int64, tag = "9")]
    pub time: i64,
    #[prost(string, tag = "14")]
    pub title: ::prost::alloc::string::String,
    #[prost(string, tag = "5")]
    pub sender: ::prost::alloc::string::String,
    #[prost(message, optional, tag = "2")]
    pub attachment: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "15")]
    pub template_id: u32,
    #[prost(string, repeated, tag = "1")]
    pub para_list: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    #[prost(enumeration = "MailType", tag = "10")]
    pub mail_type: i32,
    #[prost(string, tag = "11")]
    pub content: ::prost::alloc::string::String,
    #[prost(uint32, tag = "4")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetMailScRsp {
    #[prost(bool, tag = "10")]
    pub is_end: bool,
    #[prost(message, repeated, tag = "2")]
    pub notice_mail_list: ::prost::alloc::vec::Vec<ClientMail>,
    #[prost(message, repeated, tag = "13")]
    pub mail_list: ::prost::alloc::vec::Vec<ClientMail>,
    #[prost(uint32, tag = "3")]
    pub start: u32,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(uint32, tag = "6")]
    pub total_num: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MarkReadMailCsReq {
    #[prost(uint32, tag = "1")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MarkReadMailScRsp {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(uint32, tag = "1")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DelMailCsReq {
    #[prost(uint32, repeated, tag = "9")]
    pub id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DelMailScRsp {
    #[prost(uint32, repeated, tag = "3")]
    pub id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TakeMailAttachmentCsReq {
    #[prost(uint32, repeated, tag = "14")]
    pub mail_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "6")]
    pub jpghfnpcdjg: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ClientMailAttachmentItem {
    #[prost(uint32, tag = "9")]
    pub aicmmbfmkjd: u32,
    #[prost(uint32, tag = "7")]
    pub gifbaoolifn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TakeMailAttachmentScRsp {
    #[prost(message, repeated, tag = "13")]
    pub fail_mail_list: ::prost::alloc::vec::Vec<ClientMailAttachmentItem>,
    #[prost(uint32, repeated, tag = "10")]
    pub succ_mail_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(message, optional, tag = "12")]
    pub attachment: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NewMailScNotify {
    #[prost(uint32, repeated, tag = "8")]
    pub mail_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pdbkknjfbaj {
    #[prost(message, optional, tag = "5")]
    pub nkgchigloga: ::core::option::Option<Ocnlbagjonp>,
    #[prost(message, repeated, tag = "3")]
    pub ghgecckmfgk: ::prost::alloc::vec::Vec<Gnidcekmkei>,
    #[prost(int32, tag = "4")]
    pub biaihclgkgm: i32,
    #[prost(bool, tag = "8")]
    pub fbibmnmcjdd: bool,
    #[prost(message, repeated, tag = "9")]
    pub lddblbfobil: ::prost::alloc::vec::Vec<Ahoojlhgaic>,
    #[prost(uint32, tag = "7")]
    pub mnnhpjglokm: u32,
    #[prost(message, optional, tag = "11")]
    pub hppgfdfjgbc: ::core::option::Option<Nhppanlmeok>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nhppanlmeok {
    #[prost(uint32, tag = "3")]
    pub ejdneafclhi: u32,
    #[prost(uint32, tag = "7")]
    pub jfegjkndbcb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ocnlbagjonp {
    #[prost(message, optional, tag = "2")]
    pub albapfjjepj: ::core::option::Option<Vector>,
    #[prost(message, optional, tag = "10")]
    pub iofaedafamn: ::core::option::Option<Ojmhcnlolph>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pjjebjmooke {
    #[prost(uint32, tag = "12")]
    pub mnnhpjglokm: u32,
    #[prost(message, optional, tag = "7")]
    pub motion: ::core::option::Option<MotionInfo>,
    #[prost(uint32, tag = "13")]
    pub biaihclgkgm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gbhbdimfidi {
    #[prost(message, optional, tag = "4")]
    pub motion: ::core::option::Option<MotionInfo>,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(uint32, tag = "8")]
    pub biaihclgkgm: u32,
    #[prost(uint32, tag = "9")]
    pub mnnhpjglokm: u32,
    #[prost(message, optional, tag = "12")]
    pub hppgfdfjgbc: ::core::option::Option<Nhppanlmeok>,
    #[prost(uint32, tag = "14")]
    pub oeipegeoedk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gnidcekmkei {
    #[prost(uint32, tag = "12")]
    pub group_id: u32,
    #[prost(uint32, tag = "14")]
    pub pokieplfcok: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mcobbdmaglb {
    #[prost(message, optional, tag = "7")]
    pub anecejkebdg: ::core::option::Option<Gnidcekmkei>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bdfjhdppnpj {
    #[prost(message, optional, tag = "5")]
    pub hppgfdfjgbc: ::core::option::Option<Nhppanlmeok>,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, optional, tag = "11")]
    pub anecejkebdg: ::core::option::Option<Gnidcekmkei>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ahoojlhgaic {
    #[prost(uint32, tag = "4")]
    pub group_id: u32,
    #[prost(uint32, tag = "15")]
    pub pokieplfcok: u32,
    #[prost(float, tag = "8")]
    pub fjdbheejolb: f32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ekpkhofijmk {
    #[prost(message, optional, tag = "11")]
    pub nikgidpmolm: ::core::option::Option<Ahoojlhgaic>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jebdliallnh {
    #[prost(message, optional, tag = "6")]
    pub hppgfdfjgbc: ::core::option::Option<Nhppanlmeok>,
    #[prost(message, optional, tag = "7")]
    pub nikgidpmolm: ::core::option::Option<Ahoojlhgaic>,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Klejilbfipp {
    #[prost(uint32, tag = "5")]
    pub group_id: u32,
    #[prost(message, optional, tag = "12")]
    pub motion: ::core::option::Option<MotionInfo>,
    #[prost(message, optional, tag = "6")]
    pub nkgchigloga: ::core::option::Option<Ocnlbagjonp>,
    #[prost(uint32, tag = "7")]
    pub pokieplfcok: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Joekaoibdla {
    #[prost(uint32, tag = "15")]
    pub oeipegeoedk: u32,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(message, optional, tag = "10")]
    pub motion: ::core::option::Option<MotionInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fkbfijijelg {
    #[prost(message, optional, tag = "6")]
    pub motion: ::core::option::Option<MotionInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ecalaojmhai {
    #[prost(message, optional, tag = "6")]
    pub motion: ::core::option::Option<MotionInfo>,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(uint32, tag = "9")]
    pub oeipegeoedk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nnbmmdinfhd {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jbgacnadebh {
    #[prost(message, optional, tag = "11")]
    pub hppgfdfjgbc: ::core::option::Option<Nhppanlmeok>,
    #[prost(message, repeated, tag = "2")]
    pub lddblbfobil: ::prost::alloc::vec::Vec<Ahoojlhgaic>,
    #[prost(message, optional, tag = "3")]
    pub nkgchigloga: ::core::option::Option<Ocnlbagjonp>,
    #[prost(int32, tag = "1")]
    pub biaihclgkgm: i32,
    #[prost(bool, tag = "6")]
    pub kfkdjhkdbmd: bool,
    #[prost(message, repeated, tag = "8")]
    pub ghgecckmfgk: ::prost::alloc::vec::Vec<Gnidcekmkei>,
    #[prost(uint32, tag = "9")]
    pub mnnhpjglokm: u32,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Onajnoohmjm {
    #[prost(message, optional, tag = "11")]
    pub nkgchigloga: ::core::option::Option<Ocnlbagjonp>,
    #[prost(message, optional, tag = "10")]
    pub motion: ::core::option::Option<MotionInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lnonpmppgmb {
    #[prost(message, optional, tag = "7")]
    pub motion: ::core::option::Option<MotionInfo>,
    #[prost(uint32, tag = "14")]
    pub oeipegeoedk: u32,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gkdcdgliflh {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Knmgbiobged {
    #[prost(message, optional, tag = "11")]
    pub hppgfdfjgbc: ::core::option::Option<Nhppanlmeok>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iggpahjdflk {
    #[prost(message, repeated, tag = "10")]
    pub lddblbfobil: ::prost::alloc::vec::Vec<Ahoojlhgaic>,
    #[prost(message, optional, tag = "2")]
    pub nkgchigloga: ::core::option::Option<Ocnlbagjonp>,
    #[prost(message, optional, tag = "6")]
    pub hppgfdfjgbc: ::core::option::Option<Nhppanlmeok>,
    #[prost(bool, tag = "4")]
    pub kfkdjhkdbmd: bool,
    #[prost(uint32, tag = "14")]
    pub mnnhpjglokm: u32,
    #[prost(message, repeated, tag = "8")]
    pub ghgecckmfgk: ::prost::alloc::vec::Vec<Gnidcekmkei>,
    #[prost(int32, tag = "7")]
    pub biaihclgkgm: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mknnmicpmkn {
    #[prost(message, optional, tag = "7")]
    pub nikgidpmolm: ::core::option::Option<Ahoojlhgaic>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jhcpkpgaolm {
    #[prost(message, optional, tag = "6")]
    pub hppgfdfjgbc: ::core::option::Option<Nhppanlmeok>,
    #[prost(message, optional, tag = "2")]
    pub nikgidpmolm: ::core::option::Option<Ahoojlhgaic>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lfflmedeojd {
    #[prost(message, repeated, tag = "4")]
    pub lddblbfobil: ::prost::alloc::vec::Vec<Ahoojlhgaic>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dckiigmaaae {
    #[prost(uint32, repeated, tag = "5")]
    pub fpcgomegfjk: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ilkpmcfkmei {
    #[prost(uint32, tag = "10")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "3")]
    pub pedckponiel: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iokekdaoimh {
    #[prost(enumeration = "MessageSectionStatus", tag = "1")]
    pub status: i32,
    #[prost(uint32, tag = "10")]
    pub id: u32,
    #[prost(uint32, repeated, tag = "13")]
    pub nomdmopcmcg: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "9")]
    pub ofjgephckkb: u32,
    #[prost(message, repeated, tag = "8")]
    pub item_list: ::prost::alloc::vec::Vec<Ilkpmcfkmei>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Chkpiopjamj {
    #[prost(uint32, tag = "11")]
    pub id: u32,
    #[prost(int64, tag = "12")]
    pub bgfaiibkhie: i64,
    #[prost(enumeration = "MessageGroupStatus", tag = "10")]
    pub status: i32,
    #[prost(message, repeated, tag = "15")]
    pub fbncdmoepgc: ::prost::alloc::vec::Vec<Iokekdaoimh>,
    #[prost(uint32, tag = "5")]
    pub dnpllhmookk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nhledihcjii {
    #[prost(message, repeated, tag = "6")]
    pub lfmhmfmgjkm: ::prost::alloc::vec::Vec<Chkpiopjamj>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bpocjopjjeo {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lbhpaemhadp {
    #[prost(bool, tag = "15")]
    pub pcnpbfjaihl: bool,
    #[prost(uint32, tag = "12")]
    pub egeneneoadj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ejfkpkmjajd {
    #[prost(int64, tag = "7")]
    pub bgfaiibkhie: i64,
    #[prost(uint32, tag = "11")]
    pub group_id: u32,
    #[prost(enumeration = "MessageGroupStatus", tag = "5")]
    pub hjmdblcnlgj: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jinhdpbcpgb {
    #[prost(uint32, tag = "13")]
    pub section_id: u32,
    #[prost(enumeration = "MessageSectionStatus", tag = "3")]
    pub pkpbbjbnefi: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dihdmjhbbjf {
    #[prost(message, repeated, tag = "2")]
    pub jajdmcbpmai: ::prost::alloc::vec::Vec<Lbhpaemhadp>,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Caekhafdegh {
    #[prost(uint32, tag = "5")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "2")]
    pub pedckponiel: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iafjegpapfi {
    #[prost(uint32, tag = "10")]
    pub pedckponiel: u32,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(uint32, tag = "8")]
    pub gifbaoolifn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bppkhpdlmkp {
    #[prost(uint32, tag = "15")]
    pub section_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Djlbhkbllak {
    #[prost(message, optional, tag = "6")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(uint32, tag = "13")]
    pub section_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bidpjonolpo {
    #[prost(uint32, tag = "8")]
    pub section_id: u32,
    #[prost(message, repeated, tag = "4")]
    pub item_list: ::prost::alloc::vec::Vec<Ilkpmcfkmei>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bjjiifmcooo {
    #[prost(message, optional, tag = "15")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(uint32, tag = "7")]
    pub section_id: u32,
    #[prost(message, repeated, tag = "4")]
    pub item_list: ::prost::alloc::vec::Vec<Ilkpmcfkmei>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fmfdafkdpnd {
    #[prost(uint32, tag = "9")]
    pub blhhkgjpiea: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bcnogmmamlo {
    #[prost(uint32, tag = "3")]
    pub blhhkgjpiea: u32,
    #[prost(uint32, tag = "10")]
    pub jgmilencfcp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kahhodkeklh {
    #[prost(message, optional, tag = "7")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(message, optional, tag = "4")]
    pub bdakbkllbcd: ::core::option::Option<Bcnogmmamlo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nnhekmdcdha {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fakpcejamdj {
    #[prost(message, repeated, tag = "6")]
    pub jpddieojjif: ::prost::alloc::vec::Vec<Bcnogmmamlo>,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Acenboljfhd {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cadmcjnaadj {
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fipgdjhgaec {
    #[prost(uint32, repeated, tag = "12")]
    pub clgdchlnclh: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "7")]
    pub adbnihpbdbe: u32,
    #[prost(uint32, tag = "8")]
    pub ipnhjoomhdm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cjgblgfabdg {
    #[prost(message, repeated, tag = "15")]
    pub khbkjnaopmd: ::prost::alloc::vec::Vec<Fipgdjhgaec>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mdmkbcpidih {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aadkgmkkbae {
    #[prost(uint32, repeated, tag = "1")]
    pub aimjjpnnpih: ::prost::alloc::vec::Vec<u32>,
    #[prost(enumeration = "Hgfpcfnibdo", tag = "15")]
    pub ipnhjoomhdm: i32,
    #[prost(string, repeated, tag = "9")]
    pub dboohampkcn: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ndnlimajfip {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kdccnlcafmn {
    #[prost(string, tag = "1")]
    pub bhhbmelelhp: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ioknepcceib {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Heophagcblo {
    #[prost(uint32, tag = "15")]
    pub mcfkcmnokbp: u32,
    #[prost(uint32, tag = "2")]
    pub adljhoalpki: u32,
    #[prost(enumeration = "Pfoklielimf", tag = "1")]
    pub ipnhjoomhdm: i32,
    #[prost(uint32, tag = "9")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gkankmjangm {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fdldbekpoln {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "15")]
    pub ndjcgkekcnl: ::prost::alloc::vec::Vec<Heophagcblo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Okkhphekige {
    #[prost(message, optional, tag = "11")]
    pub agoagbdclfd: ::core::option::Option<Heophagcblo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pdnkgpcjkii {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(message, optional, tag = "9")]
    pub agoagbdclfd: ::core::option::Option<Heophagcblo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Igocjbeekjp {
    #[prost(uint32, tag = "10")]
    pub gbjdobijaoi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ddlcmokabnh {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(uint32, tag = "14")]
    pub gbjdobijaoi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Blomkhdnjbo {
    #[prost(uint32, tag = "2")]
    pub mcfkcmnokbp: u32,
    #[prost(uint32, tag = "14")]
    pub ajakblofcfi: u32,
    #[prost(uint32, tag = "10")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kaipaaomock {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ajholhbplkj {
    #[prost(message, repeated, tag = "10")]
    pub gohbcmdkdhd: ::prost::alloc::vec::Vec<Blomkhdnjbo>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fdiijgmepjm {
    #[prost(uint32, tag = "2")]
    pub group_id: u32,
    #[prost(uint64, tag = "13")]
    pub egkempkhehe: u64,
    #[prost(message, optional, tag = "8")]
    pub edmgmdjhpfe: ::core::option::Option<Blomkhdnjbo>,
    #[prost(uint32, tag = "12")]
    pub aonhopialmi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iinhkekjbch {
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(message, optional, tag = "15")]
    pub edmgmdjhpfe: ::core::option::Option<Blomkhdnjbo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetMissionDataCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pkaoeeeaakk {
    #[prost(uint32, tag = "1")]
    pub id: u32,
    #[prost(enumeration = "Knommefnljp", tag = "5")]
    pub ipnhjoomhdm: i32,
    #[prost(uint32, tag = "10")]
    pub jnfbeoilkbo: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mission {
    #[prost(uint32, tag = "1")]
    pub id: u32,
    #[prost(uint32, tag = "8")]
    pub progress: u32,
    #[prost(enumeration = "MissionStatus", tag = "10")]
    pub status: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ahjmiklboek {
    #[prost(uint32, tag = "15")]
    pub index: u32,
    #[prost(uint32, tag = "1")]
    pub impheidipgc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cdjaoblihbo {
    #[prost(message, repeated, tag = "9")]
    pub miadakiaoln: ::prost::alloc::vec::Vec<Ahjmiklboek>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ebeeijpilmi {
    #[prost(enumeration = "MissionStatus", tag = "1")]
    pub status: i32,
    #[prost(message, repeated, tag = "5")]
    pub miadakiaoln: ::prost::alloc::vec::Vec<Ahjmiklboek>,
    #[prost(uint32, tag = "2")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jbelmplppka {
    #[prost(uint32, tag = "8")]
    pub id: u32,
    #[prost(message, optional, tag = "1346")]
    pub miadakiaoln: ::core::option::Option<Cdjaoblihbo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetMissionDataScRsp {
    #[prost(uint32, tag = "7")]
    pub ekmonacbdkk: u32,
    #[prost(message, repeated, tag = "10")]
    pub mmmedgnoljo: ::prost::alloc::vec::Vec<Ebeeijpilmi>,
    #[prost(message, repeated, tag = "15")]
    pub kefnahjakah: ::prost::alloc::vec::Vec<Mission>,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mjnfdncbabj {
    #[prost(uint32, tag = "12")]
    pub gacnpdemljk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Efngadjmcmm {
    #[prost(uint32, tag = "5")]
    pub gacnpdemljk: u32,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fffnomcjpgh {
    #[prost(uint32, tag = "4")]
    pub fjigcihmieb: u32,
    #[prost(message, repeated, tag = "11")]
    pub miadakiaoln: ::prost::alloc::vec::Vec<Ahjmiklboek>,
    #[prost(string, tag = "5")]
    pub libhcieliio: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ignklehnkig {
    #[prost(message, repeated, tag = "4")]
    pub miadakiaoln: ::prost::alloc::vec::Vec<Ahjmiklboek>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
    #[prost(string, tag = "6")]
    pub libhcieliio: ::prost::alloc::string::String,
    #[prost(uint32, tag = "11")]
    pub fjigcihmieb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kljaghgnnee {
    #[prost(uint32, tag = "5")]
    pub fjigcihmieb: u32,
    #[prost(message, optional, tag = "15")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "10")]
    pub gacnpdemljk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hoajkipfkfn {
    #[prost(uint32, tag = "1")]
    pub fjigcihmieb: u32,
    #[prost(message, optional, tag = "3")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fpaahgfflkl {
    #[prost(string, tag = "8")]
    pub mlmldhkbplm: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ahpmoincmgc {
    #[prost(string, tag = "5")]
    pub mlmldhkbplm: ::prost::alloc::string::String,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hnpnfdmabfj {
    #[prost(uint32, tag = "5")]
    pub gacnpdemljk: u32,
    #[prost(bool, tag = "8")]
    pub ckogcceipni: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Enbnongjcnf {
    #[prost(uint32, tag = "9")]
    pub hgmejnbeaec: u32,
    #[prost(message, repeated, tag = "14")]
    pub papfcjnehaa: ::prost::alloc::vec::Vec<Hnpnfdmabfj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mkccjpcmboi {
    #[prost(uint32, repeated, tag = "7")]
    pub fgdeppindhp: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fdgpdngccje {
    #[prost(message, optional, tag = "7")]
    pub item_list: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "5")]
    pub fjigcihmieb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bcgoaihenim {
    #[prost(uint32, tag = "15")]
    pub fjigcihmieb: u32,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetMissionEventDataCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetMissionEventDataScRsp {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, tag = "3")]
    pub challenge_event_id: u32,
    #[prost(message, repeated, tag = "15")]
    pub mission_event_list: ::prost::alloc::vec::Vec<Mission>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MissionEventRewardScNotify {
    #[prost(uint32, tag = "7")]
    pub mission_event_id: u32,
    #[prost(message, optional, tag = "8")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AcceptMissionEventCsReq {
    #[prost(uint32, tag = "1")]
    pub mission_event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AcceptMissionEventScRsp {
    #[prost(message, optional, tag = "15")]
    pub mission_event: ::core::option::Option<Mission>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetMissionStatusCsReq {
    #[prost(uint32, repeated, tag = "6")]
    pub main_mission_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "9")]
    pub mission_event_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "12")]
    pub sub_mission_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetMissionStatusScRsp {
    #[prost(uint32, repeated, tag = "6")]
    pub finished_main_mission_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "1")]
    pub mission_event_status_list: ::prost::alloc::vec::Vec<Mission>,
    #[prost(message, repeated, tag = "14")]
    pub sub_mission_status_list: ::prost::alloc::vec::Vec<Mission>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "12")]
    pub unfinished_main_mission_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "10")]
    pub disabled_main_mission_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct InterruptMissionEventCsReq {
    #[prost(uint32, tag = "11")]
    pub mission_event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct InterruptMissionEventScRsp {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(uint32, tag = "13")]
    pub mission_event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetMissionEventProgressCsReq {
    #[prost(uint32, tag = "1")]
    pub mission_event_id: u32,
    #[prost(uint32, tag = "12")]
    pub progress: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetMissionEventProgressScRsp {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lndifcjdnkk {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nfnccpeacfm {
    #[prost(message, optional, tag = "9")]
    pub motion: ::core::option::Option<MotionInfo>,
    #[prost(uint32, tag = "15")]
    pub oeipegeoedk: u32,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ijofhanankd {
    #[prost(uint32, tag = "2")]
    pub fjigcihmieb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Khmicibjafp {
    #[prost(uint32, tag = "10")]
    pub gacnpdemljk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ipphhkfaphd {
    #[prost(uint32, repeated, tag = "2")]
    pub sub_mission_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cdjpkmddlpa {
    #[prost(message, repeated, tag = "15")]
    pub mmmedgnoljo: ::prost::alloc::vec::Vec<Ebeeijpilmi>,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ahcfkngjlnb {
    #[prost(uint32, repeated, tag = "4")]
    pub main_mission_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pfeeaihpemf {
    #[prost(uint32, tag = "8")]
    pub aiodmcnlnpe: u32,
    #[prost(enumeration = "Pcgkhmfdaei", tag = "3")]
    pub dipfdkaooan: i32,
    #[prost(uint32, tag = "9")]
    pub ekmonacbdkk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kipcaamdgii {
    #[prost(uint32, tag = "3")]
    pub eaojakdlfoc: u32,
    #[prost(uint32, tag = "4")]
    pub ekmonacbdkk: u32,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oomdghkppfb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nejkdenglko {
    #[prost(uint32, tag = "1")]
    pub kfjhaaemjbb: u32,
    #[prost(uint32, tag = "13")]
    pub jdekgfkpcdd: u32,
    #[prost(bool, tag = "6")]
    pub ldpcchkhbhn: bool,
    #[prost(uint32, tag = "12")]
    pub ghpihlmkpld: u32,
    #[prost(uint32, tag = "15")]
    pub kdgkdipnoim: u32,
    #[prost(bool, tag = "9")]
    pub ellmgneoflj: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Macchhefjai {
    #[prost(uint32, repeated, tag = "14")]
    pub ajcghmhmcao: ::prost::alloc::vec::Vec<u32>,
    #[prost(enumeration = "Fnmajoaineo", tag = "2")]
    pub ncficcieheh: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eanibknoekj {
    #[prost(uint32, tag = "7")]
    pub progress: u32,
    #[prost(uint32, tag = "15")]
    pub abdlcnhgcgc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nilmpnjdchp {
    #[prost(bool, tag = "15")]
    pub fmlakgholdl: bool,
    #[prost(uint64, tag = "12")]
    pub nefjminmcoj: u64,
    #[prost(bool, tag = "9")]
    pub dfbldlfjecb: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jiciancdhnl {
    #[prost(message, repeated, tag = "14")]
    pub lfpmpllhgep: ::prost::alloc::vec::Vec<Eanibknoekj>,
    #[prost(uint64, tag = "5")]
    pub iljgcgmdkfc: u64,
    #[prost(uint32, tag = "6")]
    pub jihckgmgcni: u32,
    #[prost(uint32, tag = "8")]
    pub idojemjkocg: u32,
    #[prost(string, tag = "39")]
    pub bhnpeghheij: ::prost::alloc::string::String,
    #[prost(uint32, tag = "13")]
    pub kioenekcbmn: u32,
    #[prost(message, repeated, tag = "4")]
    pub nnjondgnaoc: ::prost::alloc::vec::Vec<Nilmpnjdchp>,
    #[prost(message, repeated, tag = "3")]
    pub mihgbibkfpd: ::prost::alloc::vec::Vec<Eanibknoekj>,
    #[prost(uint32, tag = "1")]
    pub oojbimbghil: u32,
    #[prost(uint64, tag = "15")]
    pub aefgemhjmak: u64,
    #[prost(uint64, tag = "7")]
    pub iaedcabhnjl: u64,
    #[prost(message, repeated, tag = "10")]
    pub ocmbkjnagif: ::prost::alloc::vec::Vec<Eanibknoekj>,
    #[prost(uint32, tag = "9")]
    pub pmpiolcdfem: u32,
    #[prost(uint32, tag = "2")]
    pub lokbdigdccn: u32,
    #[prost(string, tag = "1923")]
    pub ikfmfkbmhhh: ::prost::alloc::string::String,
    #[prost(bool, tag = "11")]
    pub lalcloonfle: bool,
    #[prost(string, tag = "948")]
    pub nimpmpmljdi: ::prost::alloc::string::String,
    #[prost(message, repeated, tag = "12")]
    pub igdjaoelmkm: ::prost::alloc::vec::Vec<Eanibknoekj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dkacfeehfmc {
    #[prost(message, repeated, tag = "5")]
    pub poclifonnaa: ::prost::alloc::vec::Vec<Jiciancdhnl>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Onliaplpnne {
    #[prost(message, optional, tag = "7")]
    pub fikkmeagpop: ::core::option::Option<Dkacfeehfmc>,
    #[prost(message, optional, tag = "8")]
    pub ldonalfkgcp: ::core::option::Option<Macchhefjai>,
    #[prost(message, optional, tag = "1")]
    pub hhneaamfpbl: ::core::option::Option<Ccnlhiidnkm>,
    #[prost(uint32, repeated, tag = "4")]
    pub cpbhkdkbnkh: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "10")]
    pub flbeikgmkga: ::core::option::Option<Hjojdieioia>,
    #[prost(message, optional, tag = "12")]
    pub nkgchigloga: ::core::option::Option<Faadfkndlkc>,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(message, optional, tag = "15")]
    pub mmecfeopama: ::core::option::Option<Acajphpnkae>,
    #[prost(message, optional, tag = "2")]
    pub pcjokbgoekj: ::core::option::Option<Emkppmiienk>,
    #[prost(message, optional, tag = "5")]
    pub stt: ::core::option::Option<Pmgjgabgdjb>,
    #[prost(message, optional, tag = "3")]
    pub hghfoeohimd: ::core::option::Option<Olddddedbik>,
    #[prost(message, optional, tag = "6")]
    pub jmneheiofck: ::core::option::Option<Ebihfhonnno>,
    #[prost(message, optional, tag = "13")]
    pub gklphpdhcek: ::core::option::Option<Nejkdenglko>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ccnlhiidnkm {
    #[prost(uint32, repeated, tag = "5")]
    pub penlgipfbdi: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Adlnjbhepbf {
    #[prost(message, optional, tag = "11")]
    pub hhneaamfpbl: ::core::option::Option<Ccnlhiidnkm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pmgjgabgdjb {
    #[prost(uint32, repeated, tag = "15")]
    pub hfiobgcladg: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "4")]
    pub jcpngnmoemn: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dfkkfnkmoic {
    #[prost(message, optional, tag = "3")]
    pub stt: ::core::option::Option<Pmgjgabgdjb>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nlalomknegf {
    #[prost(uint32, tag = "4")]
    pub map_id: u32,
    #[prost(enumeration = "Knneiidpdhm", tag = "7")]
    pub ldefmdlncpd: i32,
    #[prost(bool, tag = "5")]
    pub jinkiojfaaa: bool,
    #[prost(uint32, tag = "13")]
    pub pkbdlfomfkh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Faadfkndlkc {
    #[prost(message, repeated, tag = "11")]
    pub glfeglgmnof: ::prost::alloc::vec::Vec<Nlalomknegf>,
    #[prost(message, optional, tag = "10")]
    pub biajamaombb: ::core::option::Option<Nlalomknegf>,
    #[prost(message, repeated, tag = "8")]
    pub emmhjekiejj: ::prost::alloc::vec::Vec<Nlalomknegf>,
    #[prost(uint32, tag = "15")]
    pub fehgjjpgmda: u32,
    #[prost(uint32, tag = "3")]
    pub ofdaclnimjp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Feheeaelkom {
    #[prost(message, repeated, tag = "2")]
    pub glfeglgmnof: ::prost::alloc::vec::Vec<Nlalomknegf>,
    #[prost(message, repeated, tag = "6")]
    pub emmhjekiejj: ::prost::alloc::vec::Vec<Nlalomknegf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Odajhheihhn {
    #[prost(uint32, tag = "14")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eemgcpeikje {
    #[prost(uint32, tag = "10")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dohnnkhfgbp {
    #[prost(uint32, tag = "8")]
    pub lblodcclnli: u32,
    #[prost(uint32, tag = "11")]
    pub paiknocakcp: u32,
    #[prost(uint32, repeated, tag = "7")]
    pub ohgggoidind: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "1")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Falmhhapdgo {
    #[prost(uint32, tag = "7")]
    pub depmifefhoa: u32,
    #[prost(uint32, tag = "5")]
    pub enjiodnhfej: u32,
    #[prost(uint32, repeated, tag = "12")]
    pub ohgggoidind: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "8")]
    pub paiknocakcp: u32,
    #[prost(uint32, tag = "10")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Befcmbablll {
    #[prost(message, repeated, tag = "3")]
    pub hgloifahajp: ::prost::alloc::vec::Vec<Nnlnbfacpba>,
    #[prost(uint32, tag = "15")]
    pub pfknnfkpfjh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lhobchcjbhl {
    #[prost(uint32, tag = "9")]
    pub ajecdgdmabm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gckhpbfpemj {
    #[prost(uint32, tag = "8")]
    pub klihmdbpcnc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ebofbacgckm {
    #[prost(uint32, tag = "7")]
    pub kmofkgdaebi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bckpfolejai {
    #[prost(uint32, tag = "10")]
    pub ajnnnpcggdl: u32,
    #[prost(uint32, tag = "4")]
    pub illafkgpkpe: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nnlnbfacpba {
    #[prost(uint32, tag = "10")]
    pub fplljljnjje: u32,
    #[prost(message, optional, tag = "6")]
    pub faglnkbhnme: ::core::option::Option<Odajhheihhn>,
    #[prost(message, optional, tag = "1")]
    pub kigpeagpeda: ::core::option::Option<Eemgcpeikje>,
    #[prost(message, optional, tag = "15")]
    pub hnpcpkfphgb: ::core::option::Option<Dohnnkhfgbp>,
    #[prost(message, optional, tag = "14")]
    pub illphlpapnd: ::core::option::Option<Lhobchcjbhl>,
    #[prost(message, optional, tag = "7")]
    pub bfcecnekmmp: ::core::option::Option<Gckhpbfpemj>,
    #[prost(message, optional, tag = "13")]
    pub ceidndmoffg: ::core::option::Option<Ebofbacgckm>,
    #[prost(message, optional, tag = "4")]
    pub ghdmkbabpcb: ::core::option::Option<Bckpfolejai>,
    #[prost(message, optional, tag = "8")]
    pub pojkmdhmfmo: ::core::option::Option<Falmhhapdgo>,
    #[prost(message, optional, tag = "5")]
    pub khblhcpefmb: ::core::option::Option<Befcmbablll>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Emkppmiienk {
    #[prost(message, optional, tag = "14")]
    pub bdjckiadnac: ::core::option::Option<Nnlnbfacpba>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pajnglhbcek {
    #[prost(message, optional, tag = "8")]
    pub bdjckiadnac: ::core::option::Option<Nnlnbfacpba>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oemngpfhoin {
    #[prost(message, optional, tag = "9")]
    pub biajamaombb: ::core::option::Option<Nlalomknegf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hhliiklfmjd {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ockclchgfpp {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(uint32, tag = "8")]
    pub jkcdahipepm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jhmhdkcaekh {
    #[prost(uint32, tag = "3")]
    pub fnagomfcokk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bgagbgdpfgh {
    #[prost(uint32, tag = "14")]
    pub fnagomfcokk: u32,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gfdbelcchlp {
    #[prost(uint32, tag = "11")]
    pub aebeffpildf: u32,
    #[prost(uint32, tag = "15")]
    pub hneilidpecp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Phneldiepao {
    #[prost(message, optional, tag = "2")]
    pub nkgchigloga: ::core::option::Option<Faadfkndlkc>,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "12")]
    pub alkegokiagh: ::prost::alloc::vec::Vec<Nlalomknegf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oknnkchgofp {
    #[prost(uint32, tag = "7")]
    pub lblodcclnli: u32,
    #[prost(uint32, tag = "9")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gmpdlobdffj {
    #[prost(uint32, tag = "4")]
    pub mghhnhadpgk: u32,
    #[prost(uint32, tag = "9")]
    pub event_id: u32,
    #[prost(uint32, tag = "13")]
    pub lblodcclnli: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ahfohldfekn {
    #[prost(uint32, tag = "15")]
    pub lblodcclnli: u32,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(message, optional, tag = "9")]
    pub pcjokbgoekj: ::core::option::Option<Nnlnbfacpba>,
    #[prost(message, repeated, tag = "8")]
    pub lphaheoelcl: ::prost::alloc::vec::Vec<Gmpdlobdffj>,
    #[prost(uint32, tag = "7")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gkbkhmiphdm {
    #[prost(uint32, tag = "13")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bpbbjodbdni {
    #[prost(uint32, tag = "6")]
    pub event_id: u32,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(message, optional, tag = "13")]
    pub pcjokbgoekj: ::core::option::Option<Nnlnbfacpba>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ngcceogeekk {
    #[prost(uint32, tag = "1")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Keeonknelco {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(uint32, tag = "14")]
    pub event_id: u32,
    #[prost(message, optional, tag = "8")]
    pub pcjokbgoekj: ::core::option::Option<Nnlnbfacpba>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aaaoimcdhoo {
    #[prost(uint32, tag = "6")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jiafjdiabhd {
    #[prost(message, optional, tag = "2")]
    pub pcjokbgoekj: ::core::option::Option<Nnlnbfacpba>,
    #[prost(uint32, tag = "3")]
    pub event_id: u32,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Anlmhdcpcka {
    #[prost(uint32, tag = "10")]
    pub klihmdbpcnc: u32,
    #[prost(uint32, tag = "6")]
    pub ciojdeodepl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hgcdggdincj {
    #[prost(uint32, tag = "13")]
    pub ciojdeodepl: u32,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(uint32, tag = "15")]
    pub klihmdbpcnc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bdpofjflpki {
    #[prost(uint32, tag = "9")]
    pub ajecdgdmabm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Paphleminap {
    #[prost(uint32, tag = "13")]
    pub ajecdgdmabm: u32,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jceckohfleg {
    #[prost(uint32, tag = "15")]
    pub jponpdnahok: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kjfmdoibhem {
    #[prost(uint32, tag = "11")]
    pub jponpdnahok: u32,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MonopolyActionResult {
    #[prost(enumeration = "Cpkffbbekka", tag = "8")]
    pub source_type: i32,
    #[prost(uint32, tag = "15")]
    pub click_cell_id: u32,
    #[prost(uint32, tag = "14")]
    pub effect_type: u32,
    #[prost(uint32, tag = "11")]
    pub trigger_cell_id: u32,
    #[prost(message, optional, tag = "7")]
    pub detail: ::core::option::Option<Ehakcodgeig>,
    #[prost(uint32, tag = "2")]
    pub trigger_map_id: u32,
    #[prost(uint32, tag = "12")]
    pub click_map_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Akmgdlbfmhk {
    #[prost(message, repeated, tag = "1")]
    pub cedbdeldefm: ::prost::alloc::vec::Vec<MonopolyActionResult>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Djcbklfagdi {
    #[prost(uint32, tag = "12")]
    pub fmikmpbobfg: u32,
    #[prost(bool, tag = "10")]
    pub hhmdjnffjbk: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ehakcodgeig {
    #[prost(message, optional, tag = "15")]
    pub boepgbfbiep: ::core::option::Option<Bijeholihoo>,
    #[prost(message, optional, tag = "1")]
    pub aaakohnbbia: ::core::option::Option<Bijeholihoo>,
    #[prost(message, optional, tag = "12")]
    pub mcoligflljj: ::core::option::Option<Ildegaonkgb>,
    #[prost(message, optional, tag = "8")]
    pub mgjbkjdhnae: ::core::option::Option<Ildegaonkgb>,
    #[prost(message, optional, tag = "14")]
    pub lenjkjbfmim: ::core::option::Option<Lbchheakobg>,
    #[prost(message, optional, tag = "7")]
    pub aofhccicbkd: ::core::option::Option<Lbchheakobg>,
    #[prost(message, optional, tag = "9")]
    pub aaidcpjlapc: ::core::option::Option<Gbecmcghldp>,
    #[prost(message, optional, tag = "4")]
    pub jdlbgegfglc: ::core::option::Option<Gbecmcghldp>,
    #[prost(message, optional, tag = "5")]
    pub gckhpnjaggm: ::core::option::Option<Djcbklfagdi>,
    #[prost(message, optional, tag = "10")]
    pub ghgjnlgehlc: ::core::option::Option<Ddgabplfmjp>,
    #[prost(message, optional, tag = "3")]
    pub bgipamaebnc: ::core::option::Option<Lbchheakobg>,
    #[prost(message, optional, tag = "2")]
    pub fekfhlaoopo: ::core::option::Option<Gbecmcghldp>,
    #[prost(message, optional, tag = "11")]
    pub idfapcneekn: ::core::option::Option<Kmngacgjejn>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kmngacgjejn {
    #[prost(uint32, tag = "5")]
    pub kkogahlfkbk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bijeholihoo {
    #[prost(uint32, tag = "8")]
    pub cdifgckepmj: u32,
    #[prost(uint32, tag = "14")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "15")]
    pub ahndcngokaf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gbecmcghldp {
    #[prost(uint32, tag = "12")]
    pub dgodmegkbam: u32,
    #[prost(uint32, tag = "13")]
    pub mebicbefejn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ddgabplfmjp {
    #[prost(uint32, tag = "8")]
    pub nhgingepime: u32,
    #[prost(uint32, tag = "7")]
    pub pgfimebogmo: u32,
    #[prost(uint32, tag = "5")]
    pub khnpfhhghid: u32,
    #[prost(uint32, tag = "10")]
    pub fbaijnlebeb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cnmoppanlgc {
    #[prost(uint32, tag = "1")]
    pub iabdegkmaom: u32,
    #[prost(uint32, tag = "8")]
    pub ifjocipnpgd: u32,
    #[prost(uint32, tag = "5")]
    pub ippleljgojk: u32,
    #[prost(message, optional, tag = "14")]
    pub gafjdohodjj: ::core::option::Option<Diimgejdjeo>,
    #[prost(message, optional, tag = "9")]
    pub cjofkmkggof: ::core::option::Option<Cmjcocdkdfl>,
    #[prost(message, optional, tag = "11")]
    pub bobjbgmmoba: ::core::option::Option<Cjbnjeagici>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Acajphpnkae {
    #[prost(message, optional, tag = "8")]
    pub ikohemfhcjo: ::core::option::Option<Cnmoppanlgc>,
    #[prost(message, optional, tag = "11")]
    pub nggjldolbfo: ::core::option::Option<Djcbklfagdi>,
    #[prost(message, repeated, tag = "14")]
    pub cmdjfbfcedi: ::prost::alloc::vec::Vec<Cnmoppanlgc>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mdkmelobpca {
    #[prost(message, optional, tag = "4")]
    pub jhohjkkjfmb: ::core::option::Option<ItemList>,
    #[prost(message, optional, tag = "13")]
    pub ceidndmoffg: ::core::option::Option<Cnmoppanlgc>,
    #[prost(message, optional, tag = "2")]
    pub item_list: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Abaohmipcfk {
    #[prost(message, optional, tag = "7")]
    pub ceidndmoffg: ::core::option::Option<Cnmoppanlgc>,
    #[prost(message, optional, tag = "4")]
    pub nggjldolbfo: ::core::option::Option<Djcbklfagdi>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ooflmdgpfhj {
    #[prost(uint32, tag = "14")]
    pub ippleljgojk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MonopolyGameRaiseRatioScRsp {
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(uint32, tag = "12")]
    pub ratio: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hhnlcigkekn {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lkhegjgehga {
    #[prost(message, optional, tag = "12")]
    pub jmneheiofck: ::core::option::Option<Ebihfhonnno>,
    #[prost(int64, tag = "2")]
    pub bleamlfeikk: i64,
    #[prost(uint32, tag = "3")]
    pub dhkocacafbd: u32,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(bool, tag = "10")]
    pub aciahlmopaa: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Khckekglogo {
    #[prost(bool, tag = "5")]
    pub mlecajgjkbf: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bclmpncgcln {
    #[prost(int64, tag = "14")]
    pub bleamlfeikk: i64,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(uint32, tag = "15")]
    pub ijnjnbjdaof: u32,
    #[prost(uint32, tag = "2")]
    pub hlajmkfgmib: u32,
    #[prost(uint32, tag = "3")]
    pub lcljhdcmhda: u32,
    #[prost(uint32, tag = "13")]
    pub cgkehjlfipb: u32,
    #[prost(uint32, tag = "7")]
    pub iecaihidlfo: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Diimgejdjeo {
    #[prost(uint32, tag = "12")]
    pub bjcdoknnbeo: u32,
    #[prost(uint32, repeated, tag = "8")]
    pub eokngfjefmb: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "5")]
    pub gndlckmdmee: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "10")]
    pub blfiklhoajd: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "9")]
    pub hdddmcapaca: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ohicoalaihp {
    #[prost(uint32, tag = "3")]
    pub nnndjgaappg: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cicjfjomhhh {
    #[prost(bool, tag = "10")]
    pub hdddmcapaca: bool,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "7")]
    pub blfiklhoajd: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "3")]
    pub jhfikkkokab: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cmejfhhhmjn {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MonopolyGameGachaScRsp {
    #[prost(uint32, repeated, tag = "2")]
    pub result_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Piegcnbnpdo {
    #[prost(uint32, tag = "14")]
    pub ddbkgomfdol: u32,
    #[prost(uint32, tag = "13")]
    pub aaagkehiipo: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cmjcocdkdfl {
    #[prost(uint32, repeated, tag = "11")]
    pub ieogngncjji: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "7")]
    pub gdalhfjlaii: u32,
    #[prost(uint32, tag = "15")]
    pub agbfoojlijk: u32,
    #[prost(message, repeated, tag = "1")]
    pub jipildfkhcd: ::prost::alloc::vec::Vec<Piegcnbnpdo>,
    #[prost(uint32, tag = "12")]
    pub dlniifdajpb: u32,
    #[prost(uint32, tag = "9")]
    pub bgoenbfepnf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lddnienjcmd {
    #[prost(message, repeated, tag = "6")]
    pub jipildfkhcd: ::prost::alloc::vec::Vec<Piegcnbnpdo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fepfkjhconm {
    #[prost(message, optional, tag = "2")]
    pub cjofkmkggof: ::core::option::Option<Cmjcocdkdfl>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pnfcciegjbo {
    #[prost(uint32, tag = "12")]
    pub ghfhajgpdbk: u32,
    #[prost(uint32, tag = "5")]
    pub bgoenbfepnf: u32,
    #[prost(uint32, tag = "2")]
    pub gfjcokcjbjj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ojcolfflppm {
    #[prost(message, repeated, tag = "11")]
    pub gmojlkhoang: ::prost::alloc::vec::Vec<Pnfcciegjbo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cjbnjeagici {
    #[prost(bool, tag = "7")]
    pub ipfnifmpaaf: bool,
    #[prost(uint32, tag = "8")]
    pub neegojfeifo: u32,
    #[prost(uint32, tag = "6")]
    pub akogolmfdic: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dkhcgjbmbca {
    #[prost(uint32, tag = "2")]
    pub neegojfeifo: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hedicmafcef {
    #[prost(uint32, tag = "7")]
    pub neegojfeifo: u32,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mbepefpbncb {
    #[prost(uint32, tag = "11")]
    pub cdilgmlckbb: u32,
    #[prost(message, optional, tag = "13")]
    pub item_list: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "10")]
    pub akogolmfdic: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dioojdlcdhl {
    #[prost(message, repeated, tag = "9")]
    pub kmglkpdabmd: ::prost::alloc::vec::Vec<Mbepefpbncb>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Noommfnfnog {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dijkfomcign {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ildegaonkgb {
    #[prost(uint32, tag = "15")]
    pub level: u32,
    #[prost(uint32, tag = "11")]
    pub ajecdgdmabm: u32,
    #[prost(uint32, tag = "6")]
    pub jkabfjlnpnp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Olddddedbik {
    #[prost(message, repeated, tag = "1")]
    pub hfogelplhdd: ::prost::alloc::vec::Vec<Ildegaonkgb>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ebihfhonnno {
    #[prost(uint32, tag = "2")]
    pub mmcoemhllcm: u32,
    #[prost(uint32, tag = "4")]
    pub iaiikjbkemn: u32,
    #[prost(uint32, tag = "1")]
    pub nmgebmhhnmj: u32,
    #[prost(bool, tag = "6")]
    pub agmgkjdlbmf: bool,
    #[prost(uint32, tag = "13")]
    pub bgdaieofpmo: u32,
    #[prost(uint32, tag = "15")]
    pub pagbhjhjfbl: u32,
    #[prost(uint32, tag = "14")]
    pub fedkiblkjga: u32,
    #[prost(uint32, tag = "9")]
    pub eeejiaklmfj: u32,
    #[prost(uint32, tag = "11")]
    pub aijmglljhob: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fdpjfpjdhba {
    #[prost(uint32, tag = "2")]
    pub dhkocacafbd: u32,
    #[prost(message, optional, tag = "8")]
    pub jmneheiofck: ::core::option::Option<Ebihfhonnno>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lbchheakobg {
    #[prost(uint32, tag = "4")]
    pub nkeidmkdjdl: u32,
    #[prost(uint32, tag = "9")]
    pub jfghjfckgcd: u32,
    #[prost(uint32, tag = "14")]
    pub fplljljnjje: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hjojdieioia {
    #[prost(message, repeated, tag = "10")]
    pub buff_list: ::prost::alloc::vec::Vec<Lbchheakobg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lhadafihefe {
    #[prost(uint32, tag = "5")]
    pub fedkiblkjga: u32,
    #[prost(uint32, tag = "12")]
    pub uid: u32,
    #[prost(uint32, tag = "4")]
    pub eegbknecmjk: u32,
    #[prost(uint32, tag = "9")]
    pub mmcoemhllcm: u32,
    #[prost(uint32, tag = "15")]
    pub ahmdolfpjbe: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nbmmfcdinoc {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ndemidckaff {
    #[prost(message, optional, tag = "1")]
    pub hbjcakiigmf: ::core::option::Option<Lhadafihefe>,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "3")]
    pub mbmipkjfepa: ::prost::alloc::vec::Vec<Lhadafihefe>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dnbnmmpigkf {
    #[prost(uint32, tag = "5")]
    pub hclcfgcogpm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kehbabelhkd {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(message, optional, tag = "10")]
    pub mpkghigdoaj: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "15")]
    pub hclcfgcogpm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bdcbgominlm {
    #[prost(uint32, repeated, tag = "10")]
    pub ajcghmhmcao: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "2")]
    pub ahmdolfpjbe: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Adhadgnompc {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aciophjikba {
    #[prost(uint32, tag = "3")]
    pub cnt: u32,
    #[prost(uint32, tag = "13")]
    pub mlifkagpiie: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cfnhhgahkom {
    #[prost(bool, tag = "5")]
    pub pededkenpep: bool,
    #[prost(int32, tag = "4")]
    pub hefjmepmhig: i32,
    #[prost(int32, tag = "1")]
    pub opipalmhnpb: i32,
    #[prost(bool, tag = "10")]
    pub fmlakgholdl: bool,
    #[prost(uint32, tag = "15")]
    pub progress: u32,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "12")]
    pub lphaheoelcl: ::prost::alloc::vec::Vec<Gmpdlobdffj>,
    #[prost(message, repeated, tag = "6")]
    pub jaamolookln: ::prost::alloc::vec::Vec<Aciophjikba>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bkakdelniib {
    #[prost(uint32, tag = "11")]
    pub mjlobpfinjo: u32,
    #[prost(bool, tag = "1")]
    pub fmfmpgphmgf: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kcijabfgmfa {
    #[prost(message, optional, tag = "11")]
    pub biajamaombb: ::core::option::Option<Nlalomknegf>,
    #[prost(uint32, tag = "10")]
    pub illafkgpkpe: u32,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(uint32, tag = "1")]
    pub ajnnnpcggdl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SocialEventServerCache {
    #[prost(uint32, tag = "2")]
    pub add_coin: u32,
    #[prost(uint32, tag = "4")]
    pub id: u32,
    #[prost(uint32, tag = "1")]
    pub sub_coin: u32,
    #[prost(uint32, tag = "14")]
    pub src_uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aajimanimcj {
    #[prost(message, repeated, tag = "13")]
    pub amkcdkcbgmk: ::prost::alloc::vec::Vec<SocialEventServerCache>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oihajehkgmb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hmijgcafdoj {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "1")]
    pub amkcdkcbgmk: ::prost::alloc::vec::Vec<SocialEventServerCache>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fknanjdaaaj {
    #[prost(uint32, repeated, tag = "9")]
    pub agaannjgefb: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lfhmodnabei {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "11")]
    pub ffoajhgbjeo: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lpgaookpcbh {
    #[prost(uint32, tag = "2")]
    pub oojbimbghil: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Demmpgnfila {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "14")]
    pub bkenkhhinfl: ::prost::alloc::vec::Vec<Nilmpnjdchp>,
    #[prost(uint32, tag = "11")]
    pub oojbimbghil: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eckhmadipdk {
    #[prost(uint32, tag = "4")]
    pub oojbimbghil: u32,
    #[prost(uint64, tag = "9")]
    pub dlgbenjcmia: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nojenocnhaa {
    #[prost(uint32, tag = "6")]
    pub dlgbenjcmia: u32,
    #[prost(message, optional, tag = "11")]
    pub mpkghigdoaj: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(uint32, tag = "15")]
    pub oojbimbghil: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nblfneimldp {
    #[prost(uint32, tag = "1")]
    pub oojbimbghil: u32,
    #[prost(uint64, tag = "7")]
    pub dlgbenjcmia: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fhlnpimbpma {
    #[prost(uint32, tag = "15")]
    pub oojbimbghil: u32,
    #[prost(uint64, tag = "9")]
    pub dlgbenjcmia: u64,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Caclpbkhopn {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fdodgadkhhc {
    #[prost(uint32, tag = "6")]
    pub eegbknecmjk: u32,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(uint32, tag = "12")]
    pub bbgpdlfceok: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Moldkmohceg {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Glpemflbhon {
    #[prost(message, optional, tag = "12")]
    pub fikkmeagpop: ::core::option::Option<Dkacfeehfmc>,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fjofjjpiila {
    #[prost(uint32, repeated, tag = "5")]
    pub jgddcppkmjk: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hhkckmenbnd {
    #[prost(message, optional, tag = "10")]
    pub mpkghigdoaj: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "11")]
    pub jgddcppkmjk: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jfimgebmbph {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gfifjfdicci {
    #[prost(message, optional, tag = "3")]
    pub mpkghigdoaj: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jbfnnbpgonh {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jpnhonifiln {
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(message, optional, tag = "2")]
    pub jmneheiofck: ::core::option::Option<Ebihfhonnno>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cepgmjimnij {
    #[prost(uint32, tag = "7")]
    pub pkbdlfomfkh: u32,
    #[prost(uint32, tag = "14")]
    pub map_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Njpkohfifka {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(uint32, tag = "9")]
    pub pkbdlfomfkh: u32,
    #[prost(uint32, tag = "12")]
    pub map_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jlcpedajjbg {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nloiamphhjc {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lnjfdkmegpg {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fcncbgpfpkh {
    #[prost(uint32, tag = "9")]
    pub okepnneppap: u32,
    #[prost(uint32, tag = "15")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Linnchnbleb {
    #[prost(message, repeated, tag = "5")]
    pub fojbkmhenap: ::prost::alloc::vec::Vec<Fcncbgpfpkh>,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dcbcgmhnpcb {
    #[prost(message, repeated, tag = "12")]
    pub fojbkmhenap: ::prost::alloc::vec::Vec<Fcncbgpfpkh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ofljbnmhobk {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nnlhjaipcbo {
    #[prost(uint32, tag = "15")]
    pub annjplfcbmb: u32,
    #[prost(uint32, tag = "5")]
    pub pdbbaeiejjb: u32,
    #[prost(uint32, tag = "8")]
    pub oihdepmdjbi: u32,
    #[prost(uint32, tag = "4")]
    pub bcnbcoijiao: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bnjhnboggep {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(message, optional, tag = "9")]
    pub mhlcgpjfnhi: ::core::option::Option<Nnlhjaipcbo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nhmdlcaoajh {
    #[prost(message, repeated, tag = "13")]
    pub elelohlinnf: ::prost::alloc::vec::Vec<Nnlhjaipcbo>,
    #[prost(message, repeated, tag = "12")]
    pub fojbkmhenap: ::prost::alloc::vec::Vec<Fcncbgpfpkh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ncoipjjanan {
    #[prost(uint32, tag = "8")]
    pub diadhpahlgc: u32,
    #[prost(enumeration = "Cihlhpobgai", tag = "4")]
    pub aomilajjmii: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nofjpgmnieo {
    #[prost(uint32, tag = "5")]
    pub jlekocjhldk: u32,
    #[prost(message, repeated, tag = "3")]
    pub dpijbdhholo: ::prost::alloc::vec::Vec<Ncoipjjanan>,
    #[prost(uint32, tag = "6")]
    pub clcglpdnbii: u32,
    #[prost(uint32, tag = "1")]
    pub kclfnhbhjba: u32,
    #[prost(uint32, tag = "14")]
    pub level: u32,
    #[prost(uint32, tag = "4")]
    pub egngiadcnlp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bemipjcejdf {
    #[prost(uint32, tag = "7")]
    pub fdnlfbabaif: u32,
    #[prost(bool, tag = "6")]
    pub pcnpbfjaihl: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Blckmhconkp {
    #[prost(uint32, tag = "2")]
    pub ifgjjfkjdhd: u32,
    #[prost(uint32, tag = "7")]
    pub hecpcpjokbc: u32,
    #[prost(uint32, tag = "4")]
    pub mjaokfkckdd: u32,
    #[prost(uint32, tag = "9")]
    pub eahgejnappe: u32,
    #[prost(message, repeated, tag = "10")]
    pub mophghkendp: ::prost::alloc::vec::Vec<Bemipjcejdf>,
    #[prost(uint32, tag = "15")]
    pub hkmbeadndpk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kmhbcdknjkn {
    #[prost(uint32, tag = "9")]
    pub mephiippkfd: u32,
    #[prost(uint32, tag = "15")]
    pub diadhpahlgc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aggnoopeoka {
    #[prost(uint32, tag = "1")]
    pub bdidcddmlbf: u32,
    #[prost(enumeration = "Chhfkgocfgn", tag = "9")]
    pub state: i32,
    #[prost(uint32, tag = "11")]
    pub nfgmenjojab: u32,
    #[prost(uint32, tag = "5")]
    pub ecgmfmlplho: u32,
    #[prost(uint32, tag = "6")]
    pub event_id: u32,
    #[prost(uint32, repeated, tag = "4")]
    pub pebpnhchjgn: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub godmlebhbia: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dehnhjfdlcd {
    #[prost(uint32, tag = "14")]
    pub kdffjcmodee: u32,
    #[prost(message, repeated, tag = "4")]
    pub aggedhebpah: ::prost::alloc::vec::Vec<Aggnoopeoka>,
    #[prost(uint32, repeated, tag = "13")]
    pub dbjefgghgif: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pndbmgmcngg {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Klmeebnmdae {
    #[prost(uint32, tag = "10")]
    pub oedmknlgbcp: u32,
    #[prost(message, repeated, tag = "6")]
    pub pnnelpinbpf: ::prost::alloc::vec::Vec<Nofjpgmnieo>,
    #[prost(uint32, tag = "11")]
    pub hnpcpkfphgb: u32,
    #[prost(uint32, repeated, tag = "12")]
    pub eohmkdpieni: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "4")]
    pub beplhbpblio: u32,
    #[prost(uint32, tag = "15")]
    pub kdfmhbjlfoj: u32,
    #[prost(uint32, repeated, tag = "14")]
    pub hgeaeicocec: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "13")]
    pub dpijbdhholo: ::prost::alloc::vec::Vec<Kmhbcdknjkn>,
    #[prost(uint32, tag = "7")]
    pub jgaomnekgdk: u32,
    #[prost(uint32, tag = "9")]
    pub exp: u32,
    #[prost(message, optional, tag = "8")]
    pub odbglpninjm: ::core::option::Option<Dehnhjfdlcd>,
    #[prost(uint32, tag = "5")]
    pub level: u32,
    #[prost(message, optional, tag = "2")]
    pub dpfcggcjecb: ::core::option::Option<Blckmhconkp>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Enbnbjamgcp {
    #[prost(uint32, tag = "2")]
    pub diadhpahlgc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hbknjheggij {
    #[prost(uint32, tag = "2")]
    pub diadhpahlgc: u32,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dhhjgbelghn {
    #[prost(uint32, tag = "7")]
    pub diadhpahlgc: u32,
    #[prost(enumeration = "Cihlhpobgai", tag = "8")]
    pub aomilajjmii: i32,
    #[prost(uint32, tag = "13")]
    pub mephiippkfd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hlibkjkjmia {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(uint32, tag = "5")]
    pub mephiippkfd: u32,
    #[prost(uint32, tag = "11")]
    pub diadhpahlgc: u32,
    #[prost(enumeration = "Cihlhpobgai", tag = "3")]
    pub aomilajjmii: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cbldendlaga {
    #[prost(uint32, tag = "12")]
    pub diadhpahlgc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dmmmbagnlag {
    #[prost(uint32, tag = "4")]
    pub diadhpahlgc: u32,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Noahmdhnjnn {
    #[prost(enumeration = "Bhphoniencb", tag = "1")]
    pub cicpnbcmhoc: i32,
    #[prost(uint32, tag = "4")]
    pub diadhpahlgc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nmnnnmnkkck {
    #[prost(uint32, tag = "9")]
    pub iomegekjfdb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hajohhjadpo {
    #[prost(uint32, tag = "12")]
    pub cigeijdoljp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eepjacodbme {
    #[prost(uint32, tag = "12")]
    pub ejfibekfpmo: u32,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mcilkenkphd {
    #[prost(uint32, tag = "7")]
    pub jlekocjhldk: u32,
    #[prost(uint32, tag = "15")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ppcojiafmhd {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(uint32, tag = "1")]
    pub jlekocjhldk: u32,
    #[prost(uint32, tag = "13")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Icaajdncjfg {
    #[prost(uint32, tag = "7")]
    pub level: u32,
    #[prost(enumeration = "Pbmdmmpjkio", tag = "3")]
    pub foggljepddd: i32,
    #[prost(uint32, tag = "14")]
    pub jlekocjhldk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ibcmcekeopf {
    #[prost(uint32, tag = "5")]
    pub jlekocjhldk: u32,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(uint32, tag = "11")]
    pub level: u32,
    #[prost(enumeration = "Pbmdmmpjkio", tag = "7")]
    pub foggljepddd: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mkpbjnhfgab {
    #[prost(uint32, tag = "9")]
    pub kdfmhbjlfoj: u32,
    #[prost(uint32, tag = "7")]
    pub exp: u32,
    #[prost(message, optional, tag = "8")]
    pub dpfcggcjecb: ::core::option::Option<Blckmhconkp>,
    #[prost(uint32, tag = "15")]
    pub level: u32,
    #[prost(uint32, tag = "3")]
    pub beplhbpblio: u32,
    #[prost(message, repeated, tag = "12")]
    pub dpijbdhholo: ::prost::alloc::vec::Vec<Kmhbcdknjkn>,
    #[prost(uint32, tag = "1")]
    pub hnpcpkfphgb: u32,
    #[prost(uint32, repeated, tag = "14")]
    pub eohmkdpieni: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub oedmknlgbcp: u32,
    #[prost(uint32, tag = "10")]
    pub jgaomnekgdk: u32,
    #[prost(message, optional, tag = "4")]
    pub odbglpninjm: ::core::option::Option<Dehnhjfdlcd>,
    #[prost(uint32, repeated, tag = "11")]
    pub hgeaeicocec: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "2")]
    pub pnnelpinbpf: ::prost::alloc::vec::Vec<Nofjpgmnieo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jpnphamkkbl {
    #[prost(message, optional, tag = "1")]
    pub napnbdcoafp: ::core::option::Option<Aggnoopeoka>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hfldejblmjd {
    #[prost(int32, tag = "6")]
    pub gfbbpaicgdj: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Imablofgglo {
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(message, optional, tag = "14")]
    pub napnbdcoafp: ::core::option::Option<Dehnhjfdlcd>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Klpchcijeod {
    #[prost(uint32, tag = "10")]
    pub godmlebhbia: u32,
    #[prost(uint32, tag = "9")]
    pub event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Plopcjnmpne {
    #[prost(uint32, tag = "4")]
    pub event_id: u32,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(uint32, tag = "15")]
    pub godmlebhbia: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lemikcmhfkh {
    #[prost(uint32, tag = "15")]
    pub jgaomnekgdk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Plkhmgnpona {
    #[prost(uint32, tag = "2")]
    pub diadhpahlgc: u32,
    #[prost(uint32, tag = "1")]
    pub ajoekboggld: u32,
    #[prost(uint32, tag = "7")]
    pub pfdgakcajdp: u32,
    #[prost(uint32, tag = "4")]
    pub jgaomnekgdk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Epheeickkig {
    #[prost(uint32, tag = "9")]
    pub hkmbeadndpk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pllklaikghc {
    #[prost(uint32, tag = "13")]
    pub hkmbeadndpk: u32,
    #[prost(bool, tag = "11")]
    pub ijgffggpdge: bool,
    #[prost(uint32, repeated, tag = "14")]
    pub fdnlfbabaif: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Agfkhheocib {
    #[prost(uint32, tag = "10")]
    pub bmnpahoebpb: u32,
    #[prost(uint32, tag = "3")]
    pub hkmbeadndpk: u32,
    #[prost(uint32, tag = "1")]
    pub gifbaoolifn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Khloacgebcc {
    #[prost(uint32, tag = "13")]
    pub gifbaoolifn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kghanodmjhk {
    #[prost(uint32, tag = "7")]
    pub gifbaoolifn: u32,
    #[prost(message, optional, tag = "3")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jjnfafhgegh {
    #[prost(enumeration = "Albfieindla", tag = "13")]
    pub ojdecdkhimj: i32,
    #[prost(uint32, repeated, tag = "5")]
    pub jckldhjkame: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "7")]
    pub ibfacjdmpmp: u32,
    #[prost(uint32, tag = "4")]
    pub nlgekmjbild: u32,
    #[prost(uint32, tag = "14")]
    pub jkdhdmdfgfc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gfghbddgpap {
    #[prost(uint32, repeated, tag = "1")]
    pub lbepkflgcfh: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dnonkdlgjgp {
    #[prost(message, repeated, tag = "11")]
    pub gifkcmodool: ::prost::alloc::vec::Vec<Jjnfafhgegh>,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ifajcnfmdhj {
    #[prost(uint32, tag = "13")]
    pub ibfacjdmpmp: u32,
    #[prost(uint32, tag = "5")]
    pub jmknpgakkhb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lbdkmehmopl {
    #[prost(message, optional, tag = "8")]
    pub ahdjbmhpmdl: ::core::option::Option<Jjnfafhgegh>,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hmgjccobajo {
    #[prost(uint32, tag = "3")]
    pub jmknpgakkhb: u32,
    #[prost(uint32, tag = "9")]
    pub ibfacjdmpmp: u32,
    #[prost(uint32, repeated, tag = "5")]
    pub flgpoajfdib: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hbmopdhkejd {
    #[prost(message, optional, tag = "13")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, optional, tag = "10")]
    pub ahdjbmhpmdl: ::core::option::Option<Jjnfafhgegh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fibonjppfmj {
    #[prost(uint32, tag = "1")]
    pub gacnpdemljk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jobghffpaei {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(uint32, tag = "13")]
    pub gacnpdemljk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Elojkpkiaig {
    #[prost(uint64, tag = "2")]
    pub kfanlffdpik: u64,
    #[prost(uint32, tag = "3")]
    pub gacnpdemljk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cholnfndcfb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dbmjmcnohcf {
    #[prost(uint32, tag = "4")]
    pub ccmpnpbeipj: u32,
    #[prost(uint32, repeated, tag = "6")]
    pub epoicbnlbgn: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "7")]
    pub paciklpabdl: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "15")]
    pub eacdbinnkjg: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jeejmgndnof {
    #[prost(uint32, tag = "14")]
    pub minhcfcflbd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Injoakjpnam {
    #[prost(uint32, tag = "10")]
    pub eacdbinnkjg: u32,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(uint32, tag = "15")]
    pub gcknobhoooa: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Klieoiafmda {
    #[prost(uint32, tag = "5")]
    pub minhcfcflbd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cnnegfihlcm {
    #[prost(uint32, tag = "1")]
    pub bganhiddedd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ngpmcbbmmbm {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, tag = "2")]
    pub inhdnclkmjg: u32,
    #[prost(uint32, tag = "11")]
    pub ccmpnpbeipj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jfjnjdgikkm {
    #[prost(uint32, tag = "6")]
    pub bganhiddedd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PlayerLoginCsReq {
    #[prost(enumeration = "PlatformType", tag = "9")]
    pub mbdjcknimop: i32,
    #[prost(string, tag = "350")]
    pub ldfiofjhjja: ::prost::alloc::string::String,
    #[prost(message, optional, tag = "1094")]
    pub eolcndbaelo: ::core::option::Option<Edcfbagkign>,
    #[prost(string, tag = "1800")]
    pub phpfkndolnd: ::prost::alloc::string::String,
    #[prost(string, tag = "5")]
    pub jlcmaghimmd: ::prost::alloc::string::String,
    #[prost(string, tag = "4")]
    pub pfmlagfcccc: ::prost::alloc::string::String,
    #[prost(string, tag = "2")]
    pub edopmebjide: ::prost::alloc::string::String,
    #[prost(string, tag = "12")]
    pub obgfmgeojcj: ::prost::alloc::string::String,
    #[prost(string, tag = "1045")]
    pub ajibaoaickm: ::prost::alloc::string::String,
    #[prost(uint32, tag = "15")]
    pub res_version: u32,
    #[prost(uint64, tag = "10")]
    pub login_random: u64,
    #[prost(string, tag = "185")]
    pub agdiedblcml: ::prost::alloc::string::String,
    #[prost(string, tag = "8")]
    pub cigafckhggi: ::prost::alloc::string::String,
    #[prost(bool, tag = "704")]
    pub jimgbenikeb: bool,
    #[prost(string, tag = "3")]
    pub giijchkendc: ::prost::alloc::string::String,
    #[prost(string, tag = "13")]
    pub gnpdaifmhla: ::prost::alloc::string::String,
    #[prost(string, tag = "1092")]
    pub ailinangjne: ::prost::alloc::string::String,
    #[prost(string, tag = "14")]
    pub hffeeaekfmi: ::prost::alloc::string::String,
    #[prost(uint32, tag = "7")]
    pub moikalnpcpa: u32,
    #[prost(uint32, tag = "277")]
    pub plliipjifog: u32,
    #[prost(string, tag = "11")]
    pub eafohbgekig: ::prost::alloc::string::String,
    #[prost(uint32, tag = "174")]
    pub agpojjjkkji: u32,
    #[prost(string, tag = "6")]
    pub mjeebfegeai: ::prost::alloc::string::String,
    #[prost(enumeration = "LanguageType", tag = "1")]
    pub language: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PlayerLoginScRsp {
    #[prost(uint64, tag = "15")]
    pub login_random: u64,
    #[prost(message, optional, tag = "7")]
    pub basic_info: ::core::option::Option<PlayerBasicInfo>,
    #[prost(string, tag = "14")]
    pub bobiccdekoo: ::prost::alloc::string::String,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(int32, tag = "13")]
    pub afnfpjijoee: i32,
    #[prost(bool, tag = "1")]
    pub nphadkdmhoo: bool,
    #[prost(uint32, tag = "2")]
    pub stamina: u32,
    #[prost(bool, tag = "3")]
    pub fdjiaiefkge: bool,
    #[prost(string, tag = "11")]
    pub emdigemmeaf: ::prost::alloc::string::String,
    #[prost(uint64, tag = "8")]
    pub server_timestamp_ms: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PlayerLogoutCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PlayerGetTokenCsReq {
    #[prost(uint32, tag = "4")]
    pub ndmbllmfnhk: u32,
    #[prost(string, tag = "6")]
    pub haidodckhik: ::prost::alloc::string::String,
    #[prost(string, tag = "9")]
    pub fkkcflabhoe: ::prost::alloc::string::String,
    #[prost(string, tag = "8")]
    pub iabilpaiobn: ::prost::alloc::string::String,
    #[prost(uint32, tag = "15")]
    pub mbdjcknimop: u32,
    #[prost(uint32, tag = "14")]
    pub uid: u32,
    #[prost(uint32, tag = "1")]
    pub plliipjifog: u32,
    #[prost(uint32, tag = "10")]
    pub lanekaacplh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PlayerGetTokenScRsp {
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(string, tag = "11")]
    pub msg: ::prost::alloc::string::String,
    #[prost(uint32, tag = "6")]
    pub uid: u32,
    #[prost(message, optional, tag = "13")]
    pub black_info: ::core::option::Option<BlackInfo>,
    #[prost(uint64, tag = "7")]
    pub secret_key_seed: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GmTalkScNotify {
    #[prost(string, tag = "1")]
    pub msg: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PlayerKickOutScNotify {
    #[prost(message, optional, tag = "5")]
    pub black_info: ::core::option::Option<BlackInfo>,
    #[prost(enumeration = "KickType", tag = "13")]
    pub kick_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GmTalkCsReq {
    #[prost(string, tag = "12")]
    pub msg: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GmTalkScRsp {
    #[prost(string, tag = "15")]
    pub retmsg: ::prost::alloc::string::String,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetBasicInfoCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PlayerSettingInfo {
    #[prost(bool, tag = "2")]
    pub aceoioacijo: bool,
    #[prost(bool, tag = "8")]
    pub bkfkeaokjic: bool,
    #[prost(bool, tag = "13")]
    pub omacejcnkeh: bool,
    #[prost(bool, tag = "3")]
    pub kamifjjehjo: bool,
    #[prost(bool, tag = "1")]
    pub cgehomjljhe: bool,
    #[prost(bool, tag = "4")]
    pub dadjoghhede: bool,
    #[prost(enumeration = "Ijicnomkdkc", tag = "12")]
    pub nenfhjdadja: i32,
    #[prost(bool, tag = "14")]
    pub aoengpdhmmd: bool,
    #[prost(bool, tag = "5")]
    pub ooajonlnokc: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetBasicInfoScRsp {
    #[prost(int64, tag = "15")]
    pub next_recover_time: i64,
    #[prost(uint32, tag = "3")]
    pub cur_day: u32,
    #[prost(int64, tag = "10")]
    pub last_set_nickname_time: i64,
    #[prost(message, optional, tag = "12")]
    pub player_setting_info: ::core::option::Option<PlayerSettingInfo>,
    #[prost(uint32, tag = "11")]
    pub week_cocoon_finished_count: u32,
    #[prost(uint32, tag = "8")]
    pub exchange_times: u32,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, tag = "2")]
    pub gameplay_birthday: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ExchangeStaminaCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ExchangeStaminaScRsp {
    #[prost(uint32, tag = "4")]
    pub stamina_add: u32,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "5")]
    pub item_cost_list: ::prost::alloc::vec::Vec<ItemCost>,
    #[prost(int64, tag = "11")]
    pub last_recover_time: i64,
    #[prost(uint32, tag = "15")]
    pub exchange_times: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetAuthkeyCsReq {
    #[prost(uint32, tag = "11")]
    pub dcdpohmbjma: u32,
    #[prost(uint32, tag = "6")]
    pub pkliggielpg: u32,
    #[prost(string, tag = "9")]
    pub authkey_ver: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetAuthkeyScRsp {
    #[prost(uint32, tag = "1")]
    pub pkliggielpg: u32,
    #[prost(uint32, tag = "2")]
    pub dcdpohmbjma: u32,
    #[prost(string, tag = "7")]
    pub kfggohhfffp: ::prost::alloc::string::String,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(string, tag = "3")]
    pub authkey_ver: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RegionStopScNotify {
    #[prost(int64, tag = "14")]
    pub hjmecjhgafh: i64,
    #[prost(int64, tag = "10")]
    pub acjdmioijof: i64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AntiAddictScNotify {
    #[prost(string, tag = "4")]
    pub level: ::prost::alloc::string::String,
    #[prost(uint32, tag = "13")]
    pub msg_type: u32,
    #[prost(string, tag = "11")]
    pub msg: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetNicknameCsReq {
    #[prost(bool, tag = "14")]
    pub is_modify: bool,
    #[prost(string, tag = "10")]
    pub nickname: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetNicknameScRsp {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(bool, tag = "4")]
    pub is_modify: bool,
    #[prost(int64, tag = "10")]
    pub egciplnfhgd: i64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetLevelRewardTakenListCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetLevelRewardTakenListScRsp {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "4")]
    pub taken_level_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetLevelRewardCsReq {
    #[prost(uint32, tag = "15")]
    pub jmknpgakkhb: u32,
    #[prost(uint32, tag = "10")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetLevelRewardScRsp {
    #[prost(uint32, tag = "3")]
    pub level: u32,
    #[prost(message, optional, tag = "7")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetLanguageCsReq {
    #[prost(enumeration = "LanguageType", tag = "1")]
    pub language: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetLanguageScRsp {
    #[prost(enumeration = "LanguageType", tag = "12")]
    pub language: i32,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AnnounceData {
    #[prost(string, tag = "1")]
    pub oefaeicoaak: ::prost::alloc::string::String,
    #[prost(string, tag = "9")]
    pub ncpmkfhmccf: ::prost::alloc::string::String,
    #[prost(int64, tag = "4")]
    pub end_time: i64,
    #[prost(uint32, tag = "7")]
    pub bloaehjlpfn: u32,
    #[prost(bool, tag = "15")]
    pub is_center_system_last_5_every_minutes: bool,
    #[prost(uint32, tag = "3")]
    pub dfbogdogcpp: u32,
    #[prost(uint32, tag = "12")]
    pub ifjocipnpgd: u32,
    #[prost(string, tag = "6")]
    pub chjojjlobei: ::prost::alloc::string::String,
    #[prost(int64, tag = "14")]
    pub begin_time: i64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ServerAnnounceNotify {
    #[prost(message, repeated, tag = "2")]
    pub announce_data_list: ::prost::alloc::vec::Vec<AnnounceData>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gateserver {
    #[prost(string, tag = "1272")]
    pub njlhgfifkeb: ::prost::alloc::string::String,
    #[prost(string, tag = "55")]
    pub hbnnhmepphc: ::prost::alloc::string::String,
    #[prost(string, tag = "880")]
    pub fdfemjmciao: ::prost::alloc::string::String,
    #[prost(string, tag = "1097")]
    pub pmhbnhneael: ::prost::alloc::string::String,
    #[prost(bool, tag = "1644")]
    pub nmdccehcdcc: bool,
    #[prost(string, tag = "12")]
    pub ex_resource_url: ::prost::alloc::string::String,
    #[prost(int64, tag = "8")]
    pub acjdmioijof: i64,
    #[prost(string, tag = "448")]
    pub mahfdfbkkek: ::prost::alloc::string::String,
    #[prost(string, tag = "696")]
    pub ifix_url: ::prost::alloc::string::String,
    #[prost(bool, tag = "849")]
    pub use_tcp: bool,
    #[prost(bool, tag = "943")]
    pub linlaijbboh: bool,
    #[prost(string, tag = "420")]
    pub piaogolgcpl: ::prost::alloc::string::String,
    #[prost(string, tag = "188")]
    pub gbchignjieh: ::prost::alloc::string::String,
    #[prost(string, tag = "900")]
    pub jkpgckjopfm: ::prost::alloc::string::String,
    #[prost(bool, tag = "11")]
    pub hjdjakjkdbi: bool,
    #[prost(bool, tag = "1698")]
    pub najikcgjgan: bool,
    #[prost(bool, tag = "1971")]
    pub giddjofkndm: bool,
    #[prost(bool, tag = "653")]
    pub dedgfjhbnok: bool,
    #[prost(string, tag = "171")]
    pub dlcmknkclpj: ::prost::alloc::string::String,
    #[prost(bool, tag = "859")]
    pub feehapamfci: bool,
    #[prost(string, tag = "91")]
    pub apbgaoknhkd: ::prost::alloc::string::String,
    #[prost(bool, tag = "1495")]
    pub ahmbfbkhmgh: bool,
    #[prost(bool, tag = "33")]
    pub ldknmcpffim: bool,
    #[prost(string, tag = "5")]
    pub dhglpddeknj: ::prost::alloc::string::String,
    #[prost(string, tag = "676")]
    pub megaofaecfh: ::prost::alloc::string::String,
    #[prost(uint32, tag = "3")]
    pub port: u32,
    #[prost(string, repeated, tag = "596")]
    pub nfnjjoknhfe: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    #[prost(string, tag = "1895")]
    pub lua_version: ::prost::alloc::string::String,
    #[prost(string, tag = "260")]
    pub ifix_version: ::prost::alloc::string::String,
    #[prost(bool, tag = "191")]
    pub fbnbbembcgn: bool,
    #[prost(bool, tag = "7")]
    pub jblkncaoiao: bool,
    #[prost(string, tag = "1298")]
    pub cngpaknnmna: ::prost::alloc::string::String,
    #[prost(string, tag = "1931")]
    pub hhikegpdeho: ::prost::alloc::string::String,
    #[prost(string, tag = "274")]
    pub client_secret_key: ::prost::alloc::string::String,
    #[prost(string, tag = "1040")]
    pub edkolkkapib: ::prost::alloc::string::String,
    #[prost(int64, tag = "2")]
    pub hjmecjhgafh: i64,
    #[prost(bool, tag = "1213")]
    pub eebfeohfpph: bool,
    #[prost(string, tag = "14")]
    pub asset_bundle_url: ::prost::alloc::string::String,
    #[prost(string, tag = "1195")]
    pub lncgcgcgoak: ::prost::alloc::string::String,
    #[prost(string, tag = "9")]
    pub region_name: ::prost::alloc::string::String,
    #[prost(string, tag = "1639")]
    pub gnondgeedfa: ::prost::alloc::string::String,
    #[prost(string, tag = "15")]
    pub ip: ::prost::alloc::string::String,
    #[prost(string, tag = "1474")]
    pub kekimhffpfl: ::prost::alloc::string::String,
    #[prost(uint32, tag = "6")]
    pub mnllkdcckbm: u32,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(string, tag = "13")]
    pub lua_url: ::prost::alloc::string::String,
    #[prost(bool, tag = "1236")]
    pub dfmjjcfhfea: bool,
    #[prost(string, tag = "426")]
    pub hjniploblji: ::prost::alloc::string::String,
    #[prost(uint32, tag = "10")]
    pub bdnckofdkio: u32,
    #[prost(string, tag = "4")]
    pub msg: ::prost::alloc::string::String,
    #[prost(string, tag = "1041")]
    pub kgpcolgfoph: ::prost::alloc::string::String,
    #[prost(string, tag = "1439")]
    pub bmnjnldmple: ::prost::alloc::string::String,
    #[prost(string, tag = "1924")]
    pub aijkgicnnla: ::prost::alloc::string::String,
    #[prost(string, tag = "1316")]
    pub iehpbaepnkl: ::prost::alloc::string::String,
    #[prost(string, tag = "313")]
    pub dbikhoeemki: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pncofdjepoa {
    #[prost(string, tag = "6")]
    pub heakgkgdejk: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetHeroBasicTypeCsReq {
    #[prost(enumeration = "HeroBasicType", tag = "11")]
    pub basic_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetHeroBasicTypeScRsp {
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(enumeration = "HeroBasicType", tag = "12")]
    pub basic_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetHeroBasicTypeInfoCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct HeroBasicTypeInfo {
    #[prost(uint32, tag = "11")]
    pub igbebpjjjih: u32,
    #[prost(message, repeated, tag = "12")]
    pub fckcbcccgek: ::prost::alloc::vec::Vec<AvatarSkillTree>,
    #[prost(enumeration = "HeroBasicType", tag = "14")]
    pub basic_type: i32,
    #[prost(message, repeated, tag = "7")]
    pub amafpakcckf: ::prost::alloc::vec::Vec<EquipRelic>,
    #[prost(uint32, tag = "6")]
    pub rank: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetHeroBasicTypeInfoScRsp {
    #[prost(enumeration = "Gender", tag = "7")]
    pub gender: i32,
    #[prost(enumeration = "HeroBasicType", tag = "8")]
    pub cur_basic_type: i32,
    #[prost(bool, tag = "5")]
    pub dnoakenlpnp: bool,
    #[prost(message, repeated, tag = "9")]
    pub basic_type_info_list: ::prost::alloc::vec::Vec<HeroBasicTypeInfo>,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(bool, tag = "14")]
    pub fglaflhkfen: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetGenderCsReq {
    #[prost(enumeration = "Gender", tag = "15")]
    pub gender: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetGenderScRsp {
    #[prost(enumeration = "HeroBasicType", tag = "14")]
    pub cur_basic_type: i32,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetPlayerInfoCsReq {
    #[prost(bool, tag = "12")]
    pub is_modify: bool,
    #[prost(enumeration = "Gender", tag = "14")]
    pub gender: i32,
    #[prost(string, tag = "11")]
    pub nickname: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetPlayerInfoScRsp {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(enumeration = "HeroBasicType", tag = "14")]
    pub cur_basic_type: i32,
    #[prost(int64, tag = "10")]
    pub egciplnfhgd: i64,
    #[prost(bool, tag = "7")]
    pub is_modify: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct HeroBasicTypeChangedNotify {
    #[prost(enumeration = "HeroBasicType", tag = "12")]
    pub cur_basic_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryProductInfoCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Product {
    #[prost(uint32, tag = "2")]
    pub bicnlaajaah: u32,
    #[prost(enumeration = "ProductGiftType", tag = "10")]
    pub chfimdjhcji: i32,
    #[prost(string, tag = "13")]
    pub eoejgjefodc: ::prost::alloc::string::String,
    #[prost(string, tag = "11")]
    pub icbidjgopfi: ::prost::alloc::string::String,
    #[prost(bool, tag = "1")]
    pub dcdnnbmckje: bool,
    #[prost(uint32, tag = "3")]
    pub cmflbahknkk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryProductInfoScRsp {
    #[prost(uint32, tag = "11")]
    pub igecfkhalgi: u32,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(uint32, tag = "3")]
    pub bedkdnelhde: u32,
    #[prost(uint64, tag = "1")]
    pub omkamjmjdfi: u64,
    #[prost(message, repeated, tag = "7")]
    pub bnijdioomif: ::prost::alloc::vec::Vec<Product>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Flcldcecndc {
    #[prost(message, optional, tag = "10")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ClientDownloadDataScNotify {
    #[prost(message, optional, tag = "7")]
    pub download_data: ::core::option::Option<ClientDownloadData>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Joghpekpian {
    #[prost(message, optional, tag = "13")]
    pub data: ::core::option::Option<Fjecopmfeje>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UpdateFeatureSwitchScNotify {
    #[prost(message, repeated, tag = "11")]
    pub switch_info_list: ::prost::alloc::vec::Vec<FeatureSwitchInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Baeehhkodlb {
    #[prost(uint32, tag = "12")]
    pub ifcgkkdmjfp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dbhlkapmhln {
    #[prost(uint32, tag = "3")]
    pub fndfbpejoil: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hgnpbbilcmm {
    #[prost(uint32, tag = "13")]
    pub fndfbpejoil: u32,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fhgmmhaoofd {
    #[prost(uint32, tag = "5")]
    pub nhogkknbkbg: u32,
    #[prost(string, tag = "4")]
    pub bhhbmelelhp: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pjcekahllho {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Foedhkblpgn {
    #[prost(uint32, repeated, tag = "15")]
    pub glbcegmamed: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PlayerHeartBeatCsReq {
    #[prost(message, optional, tag = "4")]
    pub upload_data: ::core::option::Option<ClientUploadData>,
    #[prost(uint32, tag = "6")]
    pub ijimaildbje: u32,
    #[prost(uint64, tag = "8")]
    pub client_time_ms: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PlayerHeartBeatScRsp {
    #[prost(message, optional, tag = "13")]
    pub download_data: ::core::option::Option<ClientDownloadData>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(uint64, tag = "6")]
    pub client_time_ms: u64,
    #[prost(uint64, tag = "15")]
    pub server_time_ms: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cfobnfcbbfj {
    #[prost(enumeration = "FeatureSwitchType", tag = "7")]
    pub igjhjcokjbl: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mfoennnflcm {
    #[prost(enumeration = "SecretKeyType", tag = "7")]
    pub ipnhjoomhdm: i32,
    #[prost(string, tag = "14")]
    pub gdedhibnedp: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ibnkoibfjel {
    #[prost(bytes = "vec", tag = "13")]
    pub bdhfalakckl: ::prost::alloc::vec::Vec<u8>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cbhcalibgde {
    #[prost(message, repeated, tag = "13")]
    pub hkoojcehdbp: ::prost::alloc::vec::Vec<Mfoennnflcm>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(bytes = "vec", tag = "11")]
    pub jghfbnmofdp: ::prost::alloc::vec::Vec<u8>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Occpmlmdoge {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mokbccgaeja {
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pbigaadhbjo {
    #[prost(uint64, tag = "15")]
    pub cifmchoniam: u64,
    #[prost(uint32, tag = "14")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jijppghphcm {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iombemeajhl {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "10")]
    pub mcgipgaikgn: ::prost::alloc::vec::Vec<Pbigaadhbjo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pahlfhcbhmi {
    #[prost(uint32, tag = "2")]
    pub dngdpkggeee: u32,
    #[prost(uint32, tag = "1")]
    pub jponpdnahok: u32,
    #[prost(uint32, tag = "5")]
    pub fdeeafnappg: u32,
    #[prost(uint32, tag = "6")]
    pub ikpgaadnhfh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hecipoheegh {
    #[prost(uint32, tag = "11")]
    pub fdeeafnappg: u32,
    #[prost(uint32, tag = "9")]
    pub jponpdnahok: u32,
    #[prost(uint32, tag = "7")]
    pub uid: u32,
    #[prost(message, repeated, tag = "14")]
    pub lhdkbkechdk: ::prost::alloc::vec::Vec<Pahlfhcbhmi>,
    #[prost(uint32, tag = "2")]
    pub ikpgaadnhfh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pkgjdbehaah {
    #[prost(uint32, tag = "8")]
    pub num: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReserveStaminaExchangeScRsp {
    #[prost(uint32, tag = "12")]
    pub num: u32,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cifanheknel {
    #[prost(int64, tag = "7")]
    pub dcgincbodig: i64,
    #[prost(uint32, tag = "9")]
    pub fgelofcafhh: u32,
    #[prost(uint32, tag = "6")]
    pub stamina: u32,
    #[prost(int64, tag = "4")]
    pub bkgmbhljgdk: i64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Knkfmbjjilk {
    #[prost(bool, tag = "6")]
    pub omacejcnkeh: bool,
    #[prost(bool, tag = "8")]
    pub cgehomjljhe: bool,
    #[prost(bool, tag = "14")]
    pub aoengpdhmmd: bool,
    #[prost(bool, tag = "12")]
    pub ooajonlnokc: bool,
    #[prost(bool, tag = "2")]
    pub kamifjjehjo: bool,
    #[prost(bool, tag = "7")]
    pub aceoioacijo: bool,
    #[prost(enumeration = "Ijicnomkdkc", tag = "5")]
    pub nenfhjdadja: i32,
    #[prost(bool, tag = "3")]
    pub bkfkeaokjic: bool,
    #[prost(bool, tag = "11")]
    pub dadjoghhede: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pcachjfleoe {
    #[prost(message, optional, tag = "5")]
    pub hknjolbfcfa: ::core::option::Option<Knkfmbjjilk>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ipbnjaikfch {
    #[prost(message, optional, tag = "14")]
    pub hknjolbfcfa: ::core::option::Option<Knkfmbjjilk>,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jifkifohcmp {
    #[prost(bytes = "vec", tag = "11")]
    pub upload_data: ::prost::alloc::vec::Vec<u8>,
    #[prost(uint32, tag = "6")]
    pub ijimaildbje: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nhagdgpcgih {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(message, optional, tag = "1")]
    pub data: ::core::option::Option<Fjecopmfeje>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Penbelfiign {
    #[prost(uint32, tag = "8")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cjblldjdcad {
    #[prost(uint32, tag = "15")]
    pub ckondfhadld: u32,
    #[prost(uint32, tag = "7")]
    pub aomilajjmii: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iffnohbfdkh {
    #[prost(message, repeated, tag = "14")]
    pub ehokfodfapg: ::prost::alloc::vec::Vec<Cjblldjdcad>,
    #[prost(bool, tag = "5")]
    pub mlceeoagakd: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Onijbaagonf {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hcdghpkfkad {
    #[prost(message, repeated, tag = "2")]
    pub fbkdjpbkelk: ::prost::alloc::vec::Vec<Penbelfiign>,
    #[prost(string, tag = "5")]
    pub mjeebfegeai: ::prost::alloc::string::String,
    #[prost(message, optional, tag = "15")]
    pub jaegibkimnf: ::core::option::Option<Iffnohbfdkh>,
    #[prost(uint32, tag = "11")]
    pub iekoibdkbhj: u32,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "3")]
    pub kcmfppgdaac: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bnigcdiacgp {
    #[prost(uint32, tag = "6")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nnpnpeljdjd {
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(uint32, tag = "15")]
    pub iekoibdkbhj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bmechddgjmb {
    #[prost(message, repeated, tag = "5")]
    pub ehokfodfapg: ::prost::alloc::vec::Vec<Cjblldjdcad>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gpgbhcjjnjn {
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "5")]
    pub ehokfodfapg: ::prost::alloc::vec::Vec<Cjblldjdcad>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lmlcnaclafm {
    #[prost(bool, tag = "6")]
    pub mlceeoagakd: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Odhacchhplp {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(bool, tag = "12")]
    pub mlceeoagakd: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eocgeoaecgf {
    #[prost(string, tag = "8")]
    pub mjeebfegeai: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dnmcjedkgcf {
    #[prost(string, tag = "9")]
    pub mjeebfegeai: ::prost::alloc::string::String,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lijmoinbcje {
    #[prost(uint32, repeated, tag = "13")]
    pub avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "1")]
    pub ckondfhadld: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iokjlkbjkpc {
    #[prost(uint32, repeated, tag = "5")]
    pub avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "4")]
    pub ckondfhadld: u32,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kahnonlbbjg {
    #[prost(uint32, tag = "1")]
    pub pobakggjoen: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kkfoddpnomb {
    #[prost(uint32, repeated, tag = "7")]
    pub pakanjhfjee: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "3")]
    pub dkameahihgc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lmaehdeedgo {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "14")]
    pub limihhfjkni: ::prost::alloc::vec::Vec<ItemList>,
    #[prost(uint32, repeated, tag = "5")]
    pub pakanjhfjee: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "1")]
    pub dkameahihgc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mhdpbodcghg {
    #[prost(uint32, tag = "8")]
    pub cjpclddiddl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pafaedfbgnf {
    #[prost(uint32, tag = "7")]
    pub fjfhepecimk: u32,
    #[prost(uint32, tag = "13")]
    pub alhcigchbfj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cgfbfnlmope {
    #[prost(uint32, tag = "11")]
    pub fjfhepecimk: u32,
    #[prost(uint32, tag = "15")]
    pub alhcigchbfj: u32,
    #[prost(message, optional, tag = "9")]
    pub hepeckohfah: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jedfljomaka {
    #[prost(uint32, tag = "4")]
    pub gfbbpaicgdj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iidhidepnjd {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kfhomdjhadk {
    #[prost(uint32, tag = "6")]
    pub gfbbpaicgdj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hkcfkefcgcg {
    #[prost(uint32, tag = "5")]
    pub ffggldbaoce: u32,
    #[prost(int64, tag = "12")]
    pub naflegkcchf: i64,
    #[prost(bool, tag = "2")]
    pub fmlakgholdl: bool,
    #[prost(uint32, tag = "3")]
    pub djknhejknnn: u32,
    #[prost(int64, tag = "9")]
    pub cladfeceimp: i64,
    #[prost(uint32, repeated, tag = "15")]
    pub eklcgammadm: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "4")]
    pub cjpclddiddl: u32,
    #[prost(enumeration = "Ipepfhojabf", tag = "8")]
    pub status: i32,
    #[prost(uint32, repeated, tag = "6")]
    pub pakanjhfjee: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Febmembkbod {
    #[prost(message, optional, tag = "12")]
    pub nhgblkgenff: ::core::option::Option<Hkcfkefcgcg>,
    #[prost(uint32, tag = "15")]
    pub cnohkidcemc: u32,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jffhhdpbmdl {
    #[prost(message, optional, tag = "6")]
    pub nhgblkgenff: ::core::option::Option<Hkcfkefcgcg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FinishPlotCsReq {
    #[prost(uint32, tag = "2")]
    pub plot_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FinishPlotScRsp {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, tag = "15")]
    pub plot_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fandghkmbnl {
    #[prost(uint32, tag = "6")]
    pub epphhcpflnc: u32,
    #[prost(message, optional, tag = "8")]
    pub mdnlmmamejd: ::core::option::Option<Gakcdpilpii>,
    #[prost(message, optional, tag = "12")]
    pub basic_info: ::core::option::Option<Cldjmhdelhn>,
    #[prost(enumeration = "PunkLordAttackerStatus", tag = "1")]
    pub nbejemiooni: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Klcpdhedkgk {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fahehkcmaok {
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "11")]
    pub hoimfegdiim: ::prost::alloc::vec::Vec<Fandghkmbnl>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jjajjnajakk {
    #[prost(bool, tag = "1")]
    pub ffejkaifojl: bool,
    #[prost(uint32, tag = "13")]
    pub monster_id: u32,
    #[prost(uint32, tag = "14")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fnaljajpngf {
    #[prost(int64, tag = "1")]
    pub kieplfmdedd: i64,
    #[prost(message, optional, tag = "6")]
    pub jlcbklpmbff: ::core::option::Option<Fandghkmbnl>,
    #[prost(uint32, repeated, tag = "13")]
    pub lcjomoncobi: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "5")]
    pub ffejkaifojl: bool,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iohijpcahep {
    #[prost(uint32, tag = "3")]
    pub monster_id: u32,
    #[prost(enumeration = "PunkLordShareType", tag = "9")]
    pub pimiljpkoih: i32,
    #[prost(uint32, tag = "14")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eomaklfgieg {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(enumeration = "PunkLordShareType", tag = "13")]
    pub pimiljpkoih: i32,
    #[prost(uint32, tag = "2")]
    pub uid: u32,
    #[prost(uint32, tag = "9")]
    pub monster_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ofphdeheiah {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nfigjnhicoe {
    #[prost(message, optional, tag = "13")]
    pub jlcbklpmbff: ::core::option::Option<Fandghkmbnl>,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hkjijnhnkfh {
    #[prost(uint32, tag = "13")]
    pub level: u32,
    #[prost(bool, tag = "12")]
    pub akhcgfhmdef: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kefobeljhie {
    #[prost(uint32, tag = "12")]
    pub level: u32,
    #[prost(bool, tag = "10")]
    pub akhcgfhmdef: bool,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(message, optional, tag = "8")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ingnmgnigfo {
    #[prost(uint32, repeated, tag = "12")]
    pub lcjomoncobi: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "11")]
    pub mdnlmmamejd: ::core::option::Option<PunkLordBattleRecord>,
    #[prost(enumeration = "PunkLordMonsterInfoNotifyReason", tag = "13")]
    pub bpodijpdnnk: i32,
    #[prost(message, optional, tag = "15")]
    pub basic_info: ::core::option::Option<Cldjmhdelhn>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Emjfjlcjehl {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bcfgdfdahlf {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(uint32, tag = "1")]
    pub keobgefannh: u32,
    #[prost(uint32, tag = "13")]
    pub inflcfdhnje: u32,
    #[prost(uint32, tag = "11")]
    pub hpkkifbjmig: u32,
    #[prost(uint32, tag = "4")]
    pub enlanglhpii: u32,
    #[prost(int64, tag = "9")]
    pub ijmmhbjgdeg: i64,
    #[prost(uint32, repeated, tag = "7")]
    pub gaeipnkgpkm: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "3")]
    pub fhbhpfoijkm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ejacbclkddp {
    #[prost(message, optional, tag = "6")]
    pub jlcbklpmbff: ::core::option::Option<Cldjmhdelhn>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gpglgabgkkk {
    #[prost(uint32, tag = "7")]
    pub gphjojmcodo: u32,
    #[prost(message, optional, tag = "12")]
    pub mdnlmmamejd: ::core::option::Option<PunkLordBattleRecord>,
    #[prost(message, optional, tag = "1")]
    pub jlcbklpmbff: ::core::option::Option<Cldjmhdelhn>,
    #[prost(uint32, tag = "5")]
    pub cjbeabphnce: u32,
    #[prost(uint32, tag = "9")]
    pub obihiejlima: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kjeaaledkib {
    #[prost(uint32, tag = "14")]
    pub world_level: u32,
    #[prost(int64, tag = "8")]
    pub phhhfhobhmk: i64,
    #[prost(uint32, tag = "5")]
    pub ifjocipnpgd: u32,
    #[prost(uint32, tag = "3")]
    pub blipenmcnbg: u32,
    #[prost(bool, tag = "4")]
    pub lhgbpnnpaem: bool,
    #[prost(uint32, tag = "1")]
    pub monster_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aodefhffcla {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mlkmnlleamb {
    #[prost(message, repeated, tag = "13")]
    pub ddfdgnnohnd: ::prost::alloc::vec::Vec<Phmkohmiphm>,
    #[prost(message, repeated, tag = "6")]
    pub pobhpjhnill: ::prost::alloc::vec::Vec<Kjeaaledkib>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ckjapiimblb {
    #[prost(message, optional, tag = "1")]
    pub gijakikfeoa: ::core::option::Option<Kjeaaledkib>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fcmibikmeii {
    #[prost(bool, tag = "12")]
    pub hjjgcclhahk: bool,
    #[prost(message, optional, tag = "15")]
    pub mdfmcffkbfp: ::core::option::Option<Phmkohmiphm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Epeaanlgecm {
    #[prost(bool, tag = "15")]
    pub hjjgcclhahk: bool,
    #[prost(uint32, tag = "2")]
    pub jfjcjmpbhgk: u32,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "9")]
    pub pccigolalng: ::prost::alloc::vec::Vec<Phmkohmiphm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mfjflpgogef {
    #[prost(uint32, tag = "3")]
    pub hpkkifbjmig: u32,
    #[prost(uint32, tag = "8")]
    pub fhbhpfoijkm: u32,
    #[prost(uint32, tag = "2")]
    pub enlanglhpii: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hpaflkaooia {
    #[prost(message, optional, tag = "12")]
    pub mdfmcffkbfp: ::core::option::Option<Phmkohmiphm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fmfbggiebki {
    #[prost(message, repeated, tag = "5")]
    pub ahkiakoomhh: ::prost::alloc::vec::Vec<PunkLordBattleRecord>,
    #[prost(message, optional, tag = "1")]
    pub mdfmcffkbfp: ::core::option::Option<Phmkohmiphm>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "14")]
    pub mboddeldkip: ::prost::alloc::vec::Vec<PunkLordBattleReplay>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eijbjfhjddc {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ojemlandahi {
    #[prost(int64, tag = "4")]
    pub cladfeceimp: i64,
    #[prost(uint32, tag = "14")]
    pub id: u32,
    #[prost(enumeration = "QuestStatus", tag = "8")]
    pub status: i32,
    #[prost(uint32, repeated, tag = "5")]
    pub icpbgodklpp: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "1")]
    pub progress: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hfeflebnpca {
    #[prost(uint32, tag = "6")]
    pub fklpphomjej: u32,
    #[prost(message, repeated, tag = "10")]
    pub ghmpdjfdmbl: ::prost::alloc::vec::Vec<Ojemlandahi>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cihbjopehng {
    #[prost(uint32, repeated, tag = "8")]
    pub aoncbhpgcab: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TakeQuestRewardScRsp {
    #[prost(message, optional, tag = "3")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "8")]
    pub succ_quest_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Digohdomgmk {
    #[prost(uint32, tag = "15")]
    pub jpghfnpcdjg: u32,
    #[prost(uint32, tag = "7")]
    pub pihfebonpbk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gnhobjgcbdb {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(message, optional, tag = "10")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "12")]
    pub pihfebonpbk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jgpkaobciii {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Olhaepmeddd {
    #[prost(uint32, tag = "15")]
    pub progress: u32,
    #[prost(uint32, tag = "1")]
    pub dbcdcobnial: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ojahamffgkd {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "9")]
    pub dclihbhpjkk: ::prost::alloc::vec::Vec<Olhaepmeddd>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kepeepjnaom {
    #[prost(message, optional, tag = "8")]
    pub nfflhfncioe: ::core::option::Option<Olhaepmeddd>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fpilpapbcjp {
    #[prost(uint32, tag = "3")]
    pub group_id: u32,
    #[prost(uint32, tag = "7")]
    pub prop_id: u32,
    #[prost(uint32, tag = "5")]
    pub pihfebonpbk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nalbaidinng {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Knkbikhgcmh {
    #[prost(uint32, repeated, tag = "13")]
    pub ghmpdjfdmbl: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Doeiooimhhd {
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "12")]
    pub ghmpdjfdmbl: ::prost::alloc::vec::Vec<Ojemlandahi>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gphijahcgbl {
    #[prost(uint32, repeated, tag = "6")]
    pub avatar_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub iijpdkfdakn: u32,
    #[prost(uint32, tag = "14")]
    pub prop_entity_id: u32,
    #[prost(uint32, tag = "3")]
    pub djghfeokhlk: u32,
    #[prost(uint32, tag = "1")]
    pub world_level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kahbigmgbpe {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mclpjhhcfhj {
    #[prost(uint32, tag = "15")]
    pub djghfeokhlk: u32,
    #[prost(bool, tag = "8")]
    pub iijpdkfdakn: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nkjlognmddk {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kenppjbalon {
    #[prost(uint32, tag = "12")]
    pub aeghcejcoaa: u32,
    #[prost(enumeration = "Epcjmhhiifd", tag = "14")]
    pub dogfoegnikn: i32,
    #[prost(uint32, tag = "9")]
    pub bhccbdiaoni: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Finihmgebln {
    #[prost(uint64, tag = "5")]
    pub ajmdnllbigm: u64,
    #[prost(uint32, tag = "1")]
    pub world_level: u32,
    #[prost(uint32, tag = "9")]
    pub djghfeokhlk: u32,
    #[prost(enumeration = "Mdiocbehhbj", tag = "4")]
    pub status: i32,
    #[prost(message, optional, tag = "15")]
    pub item_list: ::core::option::Option<ItemList>,
    #[prost(message, repeated, tag = "12")]
    pub olifkffbppn: ::prost::alloc::vec::Vec<Kenppjbalon>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Acchkgpkakb {
    #[prost(uint32, tag = "8")]
    pub oplphfmanjk: u32,
    #[prost(uint32, tag = "1")]
    pub djghfeokhlk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Koddlnddgne {
    #[prost(uint32, tag = "3")]
    pub djghfeokhlk: u32,
    #[prost(uint32, repeated, tag = "11")]
    pub fdolniconfn: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "2")]
    pub world_level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Copjjgbcdaf {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetRaidInfoScRsp {
    #[prost(uint32, repeated, tag = "11")]
    pub challenge_taken_reward_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "6")]
    pub challenge_raid_list: ::prost::alloc::vec::Vec<Acchkgpkakb>,
    #[prost(message, repeated, tag = "10")]
    pub finished_raid_info_list: ::prost::alloc::vec::Vec<Koddlnddgne>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cipjnneilbl {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ijoaedbngfb {
    #[prost(message, repeated, tag = "13")]
    pub mlafpbehjio: ::prost::alloc::vec::Vec<Acchkgpkakb>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "4")]
    pub ejehaagpein: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bmjdbeaiagb {
    #[prost(uint32, tag = "7")]
    pub iakpofjhkcl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Epbjgkfbfcb {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(message, optional, tag = "1")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "4")]
    pub iakpofjhkcl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Okcakmfhkpc {
    #[prost(message, optional, tag = "9")]
    pub ieameibkeeo: ::core::option::Option<Acchkgpkakb>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pdfebfjgphm {
    #[prost(uint32, tag = "13")]
    pub dhlgllogjlm: u32,
    #[prost(uint32, tag = "9")]
    pub progress: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ldkcienhkgj {
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(uint32, tag = "7")]
    pub progress: u32,
    #[prost(uint32, tag = "6")]
    pub dhlgllogjlm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cljljabmcag {
    #[prost(uint32, tag = "11")]
    pub world_level: u32,
    #[prost(uint32, tag = "13")]
    pub djghfeokhlk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oflflpjamlb {
    #[prost(uint32, tag = "6")]
    pub world_level: u32,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "10")]
    pub olifkffbppn: ::prost::alloc::vec::Vec<Kenppjbalon>,
    #[prost(uint32, tag = "13")]
    pub djghfeokhlk: u32,
    #[prost(bool, tag = "4")]
    pub iijpdkfdakn: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bfeijikbbgf {
    #[prost(uint32, tag = "1")]
    pub djghfeokhlk: u32,
    #[prost(uint32, tag = "12")]
    pub world_level: u32,
    #[prost(message, repeated, tag = "4")]
    pub olifkffbppn: ::prost::alloc::vec::Vec<Kenppjbalon>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hlcoapioioh {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mednaleneof {
    #[prost(message, repeated, tag = "3")]
    pub lnhoebomlae: ::prost::alloc::vec::Vec<Bfeijikbbgf>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Omibhkfkpja {
    #[prost(uint32, tag = "11")]
    pub world_level: u32,
    #[prost(uint32, tag = "12")]
    pub djghfeokhlk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mipgopjanij {
    #[prost(uint32, tag = "7")]
    pub world_level: u32,
    #[prost(uint32, tag = "2")]
    pub djghfeokhlk: u32,
    #[prost(message, optional, tag = "3")]
    pub lineup: ::core::option::Option<LineupInfo>,
    #[prost(enumeration = "Mldgocoemih", tag = "1")]
    pub bpodijpdnnk: i32,
    #[prost(message, optional, tag = "9")]
    pub scene: ::core::option::Option<SceneInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lclecmmdfak {
    #[prost(uint32, tag = "3")]
    pub nlbgjbpnfhf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jpegceodgmb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kflenlnlbdh {
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "8")]
    pub aaohdgdimml: ::prost::alloc::vec::Vec<Lclecmmdfak>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pdlpeklockl {
    #[prost(message, optional, tag = "9")]
    pub mpbfbikcfjb: ::core::option::Option<Lclecmmdfak>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nebcpniaecd {
    #[prost(uint32, repeated, tag = "3")]
    pub gjfdpgpicaf: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kknioipgaji {
    #[prost(uint32, tag = "15")]
    pub pmihjffeopc: u32,
    #[prost(map = "uint32, message", tag = "12")]
    pub aianjdalaag: ::std::collections::HashMap<u32, Nebcpniaecd>,
    #[prost(uint32, tag = "7")]
    pub bcnbcoijiao: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mnoeaoggidp {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mphcijonhcl {
    #[prost(message, repeated, tag = "14")]
    pub knikmcmafeg: ::prost::alloc::vec::Vec<Kknioipgaji>,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ippcmogmdkh {
    #[prost(uint32, tag = "10")]
    pub group_id: u32,
    #[prost(uint32, tag = "5")]
    pub bcnbcoijiao: u32,
    #[prost(uint32, tag = "14")]
    pub pmihjffeopc: u32,
    #[prost(uint32, repeated, tag = "15")]
    pub param_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(enumeration = "Geeklapjbhm", tag = "13")]
    pub bhhljepgjff: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ibmihbbjkie {
    #[prost(uint32, tag = "14")]
    pub bcnbcoijiao: u32,
    #[prost(uint32, tag = "12")]
    pub pmihjffeopc: u32,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(uint32, tag = "15")]
    pub group_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nogjbnommji {
    #[prost(uint32, tag = "12")]
    pub pmihjffeopc: u32,
    #[prost(uint32, tag = "8")]
    pub bcnbcoijiao: u32,
    #[prost(uint32, tag = "7")]
    pub group_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pgmbgmkblfn {
    #[prost(uint32, tag = "14")]
    pub bcnbcoijiao: u32,
    #[prost(uint32, tag = "9")]
    pub group_id: u32,
    #[prost(uint32, tag = "5")]
    pub pmihjffeopc: u32,
    #[prost(message, optional, tag = "2")]
    pub iggjnahdjfk: ::core::option::Option<Nebcpniaecd>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aogajiadkep {
    #[prost(uint32, tag = "8")]
    pub gndmdolbkgn: u32,
    #[prost(string, tag = "9")]
    pub nfflndehlfj: ::prost::alloc::string::String,
    #[prost(enumeration = "ReplayType", tag = "12")]
    pub dahdcmnhilo: i32,
    #[prost(uint32, tag = "7")]
    pub stage_id: u32,
    #[prost(string, tag = "4")]
    pub dglhijphbfb: ::prost::alloc::string::String,
    #[prost(uint32, tag = "3")]
    pub pkkejjflnoo: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kjhjkaegcni {
    #[prost(string, tag = "2")]
    pub nfflndehlfj: ::prost::alloc::string::String,
    #[prost(enumeration = "ReplayType", tag = "10")]
    pub dahdcmnhilo: i32,
    #[prost(uint32, tag = "1")]
    pub stage_id: u32,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(string, tag = "8")]
    pub fkkcflabhoe: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mbmcmeafamb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Acaphampnnj {
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "12")]
    pub llgoekdgmam: ::prost::alloc::vec::Vec<Mlppfodcabi>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fphboibamag {
    #[prost(uint32, tag = "4")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ccbcpbnglpg {
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "14")]
    pub angogolibho: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ijliejepojg {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dfodnlcgghb {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Elpaddfdebi {
    #[prost(uint32, tag = "11")]
    pub level: u32,
    #[prost(uint32, tag = "2")]
    pub jfghjfckgcd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jpfmnhppdlg {
    #[prost(message, repeated, tag = "2")]
    pub buff_list: ::prost::alloc::vec::Vec<Elpaddfdebi>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Imhinieedhc {
    #[prost(enumeration = "Nhcljljbnac", tag = "12")]
    pub ljfobhkfehe: i32,
    #[prost(uint32, tag = "4")]
    pub lelfkonolpp: u32,
    #[prost(enumeration = "Nhcljljbnac", tag = "8")]
    pub eplfpifpeem: i32,
    #[prost(uint32, tag = "2")]
    pub aecgcapllon: u32,
    #[prost(uint32, tag = "11")]
    pub ajhhkoopjfg: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jjojfbocgcn {
    #[prost(uint32, tag = "4")]
    pub ookmnbgkjlf: u32,
    #[prost(uint32, tag = "13")]
    pub jlekocjhldk: u32,
    #[prost(uint32, tag = "2")]
    pub map_id: u32,
    #[prost(uint32, tag = "11")]
    pub ncijbipbdae: u32,
    #[prost(message, repeated, tag = "3")]
    pub iejfbmbkaai: ::prost::alloc::vec::Vec<Imhinieedhc>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iiocklliekp {
    #[prost(uint32, tag = "3")]
    pub map_id: u32,
    #[prost(uint32, tag = "8")]
    pub jlekocjhldk: u32,
    #[prost(bool, tag = "9")]
    pub bgghncdaboe: bool,
    #[prost(enumeration = "Efhdeoklmfi", tag = "2")]
    pub dibafoelhnp: i32,
    #[prost(enumeration = "Mlcdpmiblbk", tag = "5")]
    pub kigjfaejmhn: i32,
    #[prost(uint32, tag = "14")]
    pub mkojmagcnpk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ecdbcmmegpb {
    #[prost(uint32, tag = "11")]
    pub hbnachmlbhl: u32,
    #[prost(message, repeated, tag = "6")]
    pub dhdokjaeicl: ::prost::alloc::vec::Vec<Elpaddfdebi>,
    #[prost(uint32, tag = "7")]
    pub gakkbjgikba: u32,
    #[prost(uint32, tag = "9")]
    pub bmnkhomepnf: u32,
    #[prost(bool, tag = "13")]
    pub gpigjglohga: bool,
    #[prost(uint32, tag = "2")]
    pub knldiiabgkk: u32,
    #[prost(uint32, tag = "10")]
    pub hibhhdhfhki: u32,
    #[prost(uint32, repeated, tag = "15")]
    pub cbkbijnfilp: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "4")]
    pub bgfcalaglho: u32,
    #[prost(uint32, tag = "14")]
    pub dhafgbnhcao: u32,
    #[prost(message, optional, tag = "3")]
    pub fcnlhpbbmhk: ::core::option::Option<ItemCostData>,
    #[prost(enumeration = "Mpgalnachlc", tag = "5")]
    pub eoifgpmgfgj: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hcgedplciea {
    #[prost(message, optional, tag = "10")]
    pub lenjkjbfmim: ::core::option::Option<Elpaddfdebi>,
    #[prost(message, repeated, tag = "6")]
    pub kimkmbcbdjb: ::prost::alloc::vec::Vec<Elpaddfdebi>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jicmapggmml {
    #[prost(message, repeated, tag = "2")]
    pub oefdabbacih: ::prost::alloc::vec::Vec<Elpaddfdebi>,
    #[prost(uint32, tag = "15")]
    pub cgkhkjbofgk: u32,
    #[prost(message, repeated, tag = "14")]
    pub jnmfighgpbi: ::prost::alloc::vec::Vec<Elpaddfdebi>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fcgjodgbidd {
    #[prost(float, tag = "10")]
    pub gnhlnhcbdjp: f32,
    #[prost(message, optional, tag = "3")]
    pub cost_data: ::core::option::Option<ItemCostData>,
    #[prost(uint32, tag = "7")]
    pub jfghjfckgcd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aiikbbfjlfh {
    #[prost(message, repeated, tag = "10")]
    pub ndfbnaahldm: ::prost::alloc::vec::Vec<Fcgjodgbidd>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pgggjoadabd {
    #[prost(uint32, tag = "12")]
    pub dclabpanbjg: u32,
    #[prost(map = "uint32, uint32", tag = "15")]
    pub konagcdhkkh: ::std::collections::HashMap<u32, u32>,
    #[prost(uint32, tag = "8")]
    pub mmfonffpnjm: u32,
    #[prost(uint32, tag = "11")]
    pub nkbehfhlpef: u32,
    #[prost(uint32, tag = "7")]
    pub hjkhojdemob: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Omcojpfdgil {
    #[prost(uint32, tag = "12")]
    pub dmjljndfogp: u32,
    #[prost(message, repeated, tag = "2")]
    pub ndjkcdjmbjf: ::prost::alloc::vec::Vec<Pgggjoadabd>,
    #[prost(uint32, tag = "15")]
    pub khbdikddiib: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ckbokldcjln {
    #[prost(uint32, repeated, tag = "1")]
    pub aocnmejcmbb: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "6")]
    pub ccdamnhkfoe: ::core::option::Option<Omcojpfdgil>,
    #[prost(enumeration = "Cmhbbmokjjb", tag = "13")]
    pub eoifgpmgfgj: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iepkdnfoddj {
    #[prost(uint32, repeated, tag = "5")]
    pub nakfcflciim: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ndbijljnnlj {
    #[prost(uint32, repeated, tag = "15")]
    pub lfdkacnhafi: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lalniaelfbe {
    #[prost(uint32, tag = "5")]
    pub mcnncfbfkna: u32,
    #[prost(message, optional, tag = "8")]
    pub lbhlmlahhme: ::core::option::Option<ItemList>,
    #[prost(message, optional, tag = "7")]
    pub agmcejbkfaa: ::core::option::Option<Jpfmnhppdlg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cjabhgcopep {
    #[prost(uint32, repeated, tag = "8")]
    pub cigcpmfkpab: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "12")]
    pub ihdgilcifkj: u32,
    #[prost(message, optional, tag = "6")]
    pub nghlebnllpd: ::core::option::Option<ItemCostData>,
    #[prost(uint32, tag = "15")]
    pub oecnodlmaci: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dnolbcgobkg {
    #[prost(uint32, tag = "6")]
    pub phmkggkogkl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Egablpoljhb {
    #[prost(uint32, tag = "4")]
    pub pbooneihfmb: u32,
    #[prost(uint32, tag = "14")]
    pub dhafgbnhcao: u32,
    #[prost(uint32, tag = "11")]
    pub ocpioeedbcj: u32,
    #[prost(uint32, tag = "5")]
    pub jhmofjpkgim: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mbhngnblblj {
    #[prost(message, optional, tag = "1236")]
    pub haaegbncmed: ::core::option::Option<Mldiipclmof>,
    #[prost(message, optional, tag = "806")]
    pub eafohbgekig: ::core::option::Option<Ecpdlcmicok>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ecpdlcmicok {
    #[prost(message, optional, tag = "2")]
    pub dhbfppkhghf: ::core::option::Option<Aofkiooneek>,
    #[prost(message, optional, tag = "10")]
    pub hddbdcijcln: ::core::option::Option<Hfjjojlbhhj>,
    #[prost(message, optional, tag = "11")]
    pub maceecbfmfi: ::core::option::Option<Jkbocheoboo>,
    #[prost(message, optional, tag = "14")]
    pub mpehgbbgnph: ::core::option::Option<Hjmimgdmgge>,
    #[prost(message, optional, tag = "3")]
    pub ogipdfmfkke: ::core::option::Option<Aplcbmfcefn>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mldiipclmof {
    #[prost(message, optional, tag = "3")]
    pub dhbfppkhghf: ::core::option::Option<Jeafdiljoga>,
    #[prost(message, optional, tag = "2")]
    pub ccdamnhkfoe: ::core::option::Option<Gablnokobpb>,
    #[prost(message, optional, tag = "6")]
    pub kboghocciib: ::core::option::Option<Jpofdehpkap>,
    #[prost(enumeration = "Mlcdpmiblbk", tag = "7")]
    pub status: i32,
    #[prost(message, optional, tag = "9")]
    pub nkgchigloga: ::core::option::Option<Jjojfbocgcn>,
    #[prost(message, optional, tag = "8")]
    pub cfkepbadeco: ::core::option::Option<Hahmakeodgg>,
    #[prost(bool, tag = "5")]
    pub mpldkhlbmmc: bool,
    #[prost(message, optional, tag = "11")]
    pub jeiapebiice: ::core::option::Option<Engcgjcnfgj>,
    #[prost(message, optional, tag = "10")]
    pub fnaeboidadn: ::core::option::Option<Dgnnoddkkfa>,
    #[prost(message, optional, tag = "14")]
    pub flbeikgmkga: ::core::option::Option<Padnhjfkbnd>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hjmimgdmgge {
    #[prost(int64, tag = "4")]
    pub begin_time: i64,
    #[prost(uint32, tag = "11")]
    pub nemmmmlgppg: u32,
    #[prost(int64, tag = "14")]
    pub end_time: i64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aplcbmfcefn {
    #[prost(message, repeated, tag = "15")]
    pub bcllnpipall: ::prost::alloc::vec::Vec<Iiocklliekp>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aofkiooneek {
    #[prost(bool, tag = "15")]
    pub cekfbkicmoo: bool,
    #[prost(uint32, tag = "11")]
    pub nlkmlckpnpe: u32,
    #[prost(uint32, repeated, tag = "2")]
    pub pipmchkoncg: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "7")]
    pub dkgeblgdhcj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jkbocheoboo {
    #[prost(uint32, tag = "12")]
    pub bdibiicahac: u32,
    #[prost(uint32, tag = "1")]
    pub jaaobgnidjl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Padnhjfkbnd {
    #[prost(message, repeated, tag = "8")]
    pub dhdokjaeicl: ::prost::alloc::vec::Vec<Elpaddfdebi>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gablnokobpb {
    #[prost(message, optional, tag = "10")]
    pub ccdamnhkfoe: ::core::option::Option<Omcojpfdgil>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jpofdehpkap {
    #[prost(uint32, repeated, tag = "9")]
    pub ehifclophhb: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "7")]
    pub base_avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "12")]
    pub ppmpgogolif: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "13")]
    pub onpfehocppn: ::core::option::Option<Cjabhgcopep>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Igmohlbooli {
    #[prost(message, optional, tag = "11")]
    pub ofecbbaocgi: ::core::option::Option<Ndbijljnnlj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jeafdiljoga {
    #[prost(bool, tag = "15")]
    pub cekfbkicmoo: bool,
    #[prost(uint32, tag = "10")]
    pub nlkmlckpnpe: u32,
    #[prost(uint32, tag = "1")]
    pub ffoomfhaooa: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Engcgjcnfgj {
    #[prost(uint32, repeated, tag = "5")]
    pub kgmngkilkmd: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cfmeoaidkja {
    #[prost(uint32, tag = "1")]
    pub dkgeblgdhcj: u32,
    #[prost(uint32, tag = "10")]
    pub ffoomfhaooa: u32,
    #[prost(uint32, repeated, tag = "5")]
    pub pipmchkoncg: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "14")]
    pub cekfbkicmoo: bool,
    #[prost(uint32, tag = "2")]
    pub nlkmlckpnpe: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Boeellkiicm {
    #[prost(uint32, tag = "1")]
    pub bchccoeolgk: u32,
    #[prost(uint32, tag = "4")]
    pub jlmofffdlnb: u32,
    #[prost(uint32, tag = "7")]
    pub jfjcjmpbhgk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lmeeojnnkbj {
    #[prost(message, repeated, tag = "4")]
    pub emkdphcnkjd: ::prost::alloc::vec::Vec<Boeellkiicm>,
    #[prost(uint32, tag = "10")]
    pub jhfikkkokab: u32,
    #[prost(float, tag = "1")]
    pub pmlhfadiogo: f32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jlijpglihoj {
    #[prost(enumeration = "AvatarType", tag = "2")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "5")]
    pub id: u32,
    #[prost(uint32, tag = "1")]
    pub level: u32,
    #[prost(uint32, tag = "3")]
    pub slot: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fopohfmdcia {
    #[prost(message, repeated, tag = "14")]
    pub buff_list: ::prost::alloc::vec::Vec<Elpaddfdebi>,
    #[prost(uint32, repeated, tag = "8")]
    pub ndjkcdjmbjf: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "5")]
    pub avatar_list: ::prost::alloc::vec::Vec<Jlijpglihoj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Klmfmfanhle {
    #[prost(uint32, tag = "6")]
    pub iiojhkmaibm: u32,
    #[prost(uint32, tag = "3")]
    pub acbcheafbme: u32,
    #[prost(bool, tag = "8")]
    pub pienecglnpm: bool,
    #[prost(message, optional, tag = "1")]
    pub imdacmgefcl: ::core::option::Option<Ilknlohcbja>,
    #[prost(message, optional, tag = "12")]
    pub jeahioadhce: ::core::option::Option<Lmeeojnnkbj>,
    #[prost(message, optional, tag = "5")]
    pub lhfhaeolcoe: ::core::option::Option<Fopohfmdcia>,
    #[prost(uint32, tag = "11")]
    pub bdibiicahac: u32,
    #[prost(uint32, tag = "9")]
    pub jfjcjmpbhgk: u32,
    #[prost(message, optional, tag = "2")]
    pub bibmjcemcfa: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "1131")]
    pub jlekocjhldk: u32,
    #[prost(uint32, tag = "13")]
    pub kplgpndgeae: u32,
    #[prost(uint32, tag = "1911")]
    pub cignhpmncee: u32,
    #[prost(message, optional, tag = "14")]
    pub faakchmpmgi: ::core::option::Option<Hfjjojlbhhj>,
    #[prost(message, optional, tag = "7")]
    pub diphkamjaab: ::core::option::Option<Hfjjojlbhhj>,
    #[prost(message, optional, tag = "10")]
    pub pcmfbeeembm: ::core::option::Option<ItemList>,
    #[prost(bool, tag = "4")]
    pub bccnneknbdm: bool,
    #[prost(message, optional, tag = "15")]
    pub bhlocdabfll: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hfjjojlbhhj {
    #[prost(uint32, tag = "6")]
    pub oojbimbghil: u32,
    #[prost(bool, tag = "13")]
    pub lhlgfmepmfb: bool,
    #[prost(int64, tag = "15")]
    pub ggmncephafm: i64,
    #[prost(bool, tag = "11")]
    pub lbilnddaedo: bool,
    #[prost(uint32, tag = "4")]
    pub jihambbomod: u32,
    #[prost(uint32, repeated, tag = "7")]
    pub kepmlilpaca: ::prost::alloc::vec::Vec<u32>,
    #[prost(int64, tag = "9")]
    pub omnfcockhbc: i64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jjihgopnmdn {
    #[prost(uint32, tag = "14")]
    pub mpkacbpnmpn: u32,
    #[prost(uint32, tag = "5")]
    pub obpjpapapfm: u32,
    #[prost(uint32, tag = "1")]
    pub exp: u32,
    #[prost(uint32, tag = "7")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RogueDialogueEventParam {
    #[prost(uint32, tag = "8")]
    pub dialogue_event_id: u32,
    #[prost(float, tag = "4")]
    pub ratio: f32,
    #[prost(bool, tag = "11")]
    pub is_valid: bool,
    #[prost(uint32, tag = "14")]
    pub arg_id: u32,
    #[prost(int32, tag = "5")]
    pub int_value: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aklegeppdee {
    #[prost(uint32, repeated, tag = "11")]
    pub oofpnimpdcl: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub lnigemhooda: u32,
    #[prost(uint32, tag = "1")]
    pub klhedpmgpjj: u32,
    #[prost(message, repeated, tag = "9")]
    pub blbmhdmmpkg: ::prost::alloc::vec::Vec<RogueDialogueEventParam>,
    #[prost(uint32, tag = "6")]
    pub mfdeoadgmbk: u32,
    #[prost(uint32, tag = "5")]
    pub lagacndlgom: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cjcanmdebfc {
    #[prost(uint32, repeated, tag = "10")]
    pub fdaclbnkpmj: ::prost::alloc::vec::Vec<u32>,
    #[prost(enumeration = "Pcpjccgafgb", tag = "2")]
    pub bahipgncfjo: i32,
    #[prost(message, optional, tag = "13")]
    pub lbhlmlahhme: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jockiplncch {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mjgfpbhildb {
    #[prost(message, optional, tag = "9")]
    pub mdgjahafkgj: ::core::option::Option<Mbhngnblblj>,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ilhokinfaid {
    #[prost(uint32, repeated, tag = "15")]
    pub hcnghgehhpj: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "3")]
    pub jlekocjhldk: u32,
    #[prost(uint32, tag = "12")]
    pub jmknpgakkhb: u32,
    #[prost(uint32, repeated, tag = "14")]
    pub base_avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "2")]
    pub mpkacbpnmpn: u32,
    #[prost(uint32, repeated, tag = "9")]
    pub ppmpgogolif: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ejbfjlpkhal {
    #[prost(message, optional, tag = "10")]
    pub lineup: ::core::option::Option<LineupInfo>,
    #[prost(message, optional, tag = "14")]
    pub mdgjahafkgj: ::core::option::Option<Mbhngnblblj>,
    #[prost(message, optional, tag = "9")]
    pub fdajeidnmak: ::core::option::Option<Pdbkknjfbaj>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(message, optional, tag = "5")]
    pub scene: ::core::option::Option<SceneInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ioijlholibb {
    #[prost(uint32, tag = "15")]
    pub jmknpgakkhb: u32,
    #[prost(uint32, tag = "9")]
    pub jlekocjhldk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ggbbakhicbc {
    #[prost(message, optional, tag = "7")]
    pub fdajeidnmak: ::core::option::Option<Pdbkknjfbaj>,
    #[prost(message, optional, tag = "10")]
    pub mdgjahafkgj: ::core::option::Option<Mbhngnblblj>,
    #[prost(message, optional, tag = "2")]
    pub lineup: ::core::option::Option<LineupInfo>,
    #[prost(message, optional, tag = "3")]
    pub scene: ::core::option::Option<SceneInfo>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dlgecfmfdpn {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gdomgbjipcb {
    #[prost(message, optional, tag = "3")]
    pub fdajeidnmak: ::core::option::Option<Pdbkknjfbaj>,
    #[prost(message, optional, tag = "15")]
    pub scene: ::core::option::Option<SceneInfo>,
    #[prost(message, optional, tag = "10")]
    pub lineup: ::core::option::Option<LineupInfo>,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(message, optional, tag = "1")]
    pub mdgjahafkgj: ::core::option::Option<Mbhngnblblj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ielgncmcjmn {
    #[prost(message, optional, tag = "7")]
    pub ddkkcoofcjh: ::core::option::Option<Klmfmfanhle>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fjipjgphkna {
    #[prost(uint32, repeated, tag = "10")]
    pub ppmpgogolif: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "12")]
    pub base_avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "6")]
    pub prop_entity_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ncdmnbhafik {
    #[prost(uint32, repeated, tag = "15")]
    pub ppmpgogolif: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "7")]
    pub base_avatar_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mhgfplbcbbd {
    #[prost(uint32, repeated, tag = "2")]
    pub base_avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "13")]
    pub ppmpgogolif: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "4")]
    pub base_avatar_id: u32,
    #[prost(uint32, tag = "7")]
    pub jmknpgakkhb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kdanilegbdf {
    #[prost(uint32, tag = "1")]
    pub fokondhhkpc: u32,
    #[prost(uint32, repeated, tag = "7")]
    pub ppmpgogolif: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "11")]
    pub onpfehocppn: ::core::option::Option<Cjabhgcopep>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "6")]
    pub base_avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "10")]
    pub base_avatar_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kjfdmjogloo {
    #[prost(message, optional, tag = "15")]
    pub onpfehocppn: ::core::option::Option<Cjabhgcopep>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nhhamklimef {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Acocajpjbka {
    #[prost(message, optional, tag = "6")]
    pub fpfclcfjpee: ::core::option::Option<Aiikbbfjlfh>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dpmopelofgi {
    #[prost(uint32, tag = "12")]
    pub giibaepcgan: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fpinmhneici {
    #[prost(message, optional, tag = "15")]
    pub gnagbcdmnac: ::core::option::Option<Elpaddfdebi>,
    #[prost(bool, tag = "13")]
    pub bfknlcpgdeh: bool,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iekpdhbebec {
    #[prost(uint32, tag = "11")]
    pub jlekocjhldk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Abjfpkchejp {
    #[prost(message, optional, tag = "15")]
    pub mdgjahafkgj: ::core::option::Option<Mbhngnblblj>,
    #[prost(message, optional, tag = "1")]
    pub ddkkcoofcjh: ::core::option::Option<Klmfmfanhle>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Blokbmjlepj {
    #[prost(bool, tag = "7")]
    pub mpldkhlbmmc: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Idnaomnfclc {
    #[prost(message, optional, tag = "10")]
    pub ddkkcoofcjh: ::core::option::Option<Klmfmfanhle>,
    #[prost(message, optional, tag = "13")]
    pub scene: ::core::option::Option<SceneInfo>,
    #[prost(bool, tag = "12")]
    pub mkkdcoldomf: bool,
    #[prost(message, optional, tag = "14")]
    pub lineup: ::core::option::Option<LineupInfo>,
    #[prost(message, optional, tag = "7")]
    pub hddbdcijcln: ::core::option::Option<Hfjjojlbhhj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nfcfbmnaodc {
    #[prost(uint32, tag = "10")]
    pub aecgcapllon: u32,
    #[prost(uint32, tag = "7")]
    pub ajhhkoopjfg: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Olbldogdnlo {
    #[prost(message, optional, tag = "12")]
    pub fdajeidnmak: ::core::option::Option<Pdbkknjfbaj>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(message, optional, tag = "5")]
    pub scene: ::core::option::Option<SceneInfo>,
    #[prost(uint32, tag = "15")]
    pub ncijbipbdae: u32,
    #[prost(message, optional, tag = "6")]
    pub lineup: ::core::option::Option<LineupInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Olhpccdjgme {
    #[prost(message, optional, tag = "9")]
    pub chgffhjaddm: ::core::option::Option<Imhinieedhc>,
    #[prost(uint32, tag = "1")]
    pub map_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fbmmmhdpefa {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ebbdeddmdfg {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "3")]
    pub doifnmcckgo: ::prost::alloc::vec::Vec<Aklegeppdee>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jegkfdohioe {
    #[prost(uint32, tag = "13")]
    pub dealffogemo: u32,
    #[prost(uint32, tag = "6")]
    pub jmknpgakkhb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Emifnbkpnkg {
    #[prost(message, optional, tag = "4")]
    pub oapecgmhfon: ::core::option::Option<Cjcanmdebfc>,
    #[prost(message, optional, tag = "8")]
    pub phofkolhbkm: ::core::option::Option<Aklegeppdee>,
    #[prost(uint32, tag = "13")]
    pub dealffogemo: u32,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bekfajfigdj {
    #[prost(message, repeated, tag = "13")]
    pub doifnmcckgo: ::prost::alloc::vec::Vec<Aklegeppdee>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cinlgdcaghm {
    #[prost(uint32, tag = "10")]
    pub nanapcihmje: u32,
    #[prost(uint32, tag = "12")]
    pub jmknpgakkhb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Apnclniflje {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ggkhkninbkb {
    #[prost(bool, tag = "8")]
    pub gfbgmaegann: bool,
    #[prost(uint32, tag = "6")]
    pub jmknpgakkhb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Immdhnallkl {
    #[prost(message, optional, tag = "3")]
    pub nlilccnjmjl: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(message, optional, tag = "15")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gmkkengiepe {
    #[prost(uint32, tag = "8")]
    pub count: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ExchangeRogueRewardKeyScRsp {
    #[prost(uint32, tag = "13")]
    pub count: u32,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hmnlomlclhj {
    #[prost(uint32, tag = "8")]
    pub jlekocjhldk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fpneanfnino {
    #[prost(message, optional, tag = "2")]
    pub jceiakbbjap: ::core::option::Option<ItemList>,
    #[prost(message, optional, tag = "12")]
    pub pdjobmmbppb: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kjlgajphphj {
    #[prost(uint32, tag = "8")]
    pub mpkacbpnmpn: u32,
    #[prost(uint32, tag = "14")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Likcecokide {
    #[prost(uint32, tag = "9")]
    pub level: u32,
    #[prost(uint32, tag = "14")]
    pub mpkacbpnmpn: u32,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(message, optional, tag = "10")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nifcfabefem {
    #[prost(message, optional, tag = "4")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "9")]
    pub level: u32,
    #[prost(uint32, tag = "3")]
    pub mpkacbpnmpn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hdjkojkpjme {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pbmlgocaeog {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(message, optional, tag = "7")]
    pub napnbdcoafp: ::core::option::Option<Hfjjojlbhhj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pnegcdpejad {
    #[prost(uint32, repeated, tag = "10")]
    pub fpnfihlndbi: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "2")]
    pub oojbimbghil: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hfjminjgajp {
    #[prost(message, optional, tag = "7")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(message, optional, tag = "9")]
    pub hddbdcijcln: ::core::option::Option<Hfjjojlbhhj>,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(uint32, tag = "3")]
    pub oojbimbghil: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ceagcfipoja {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kiadejbalci {
    #[prost(message, optional, tag = "9")]
    pub hddbdcijcln: ::core::option::Option<Hfjjojlbhhj>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hhpiplgoclm {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dlipamoeead {
    #[prost(message, repeated, tag = "3")]
    pub cgifaldpbfe: ::prost::alloc::vec::Vec<Jjihgopnmdn>,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Efodmajjdnd {
    #[prost(uint32, tag = "12")]
    pub mpkacbpnmpn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Djholeakobj {
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(message, optional, tag = "6")]
    pub dhbfppkhghf: ::core::option::Option<Jjihgopnmdn>,
    #[prost(message, optional, tag = "4")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ggdcjcanldk {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cjpflpjldci {
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(message, optional, tag = "10")]
    pub hgpklojihdi: ::core::option::Option<Jccemojomaf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jgadohofiac {
    #[prost(uint32, tag = "1")]
    pub nhmachllchm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ekeaaiaojcj {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(message, optional, tag = "1")]
    pub hgpklojihdi: ::core::option::Option<Jccemojomaf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ldaijgfejla {
    #[prost(message, optional, tag = "4")]
    pub maceecbfmfi: ::core::option::Option<Egablpoljhb>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fbhfkijoanj {
    #[prost(enumeration = "Mlcdpmiblbk", tag = "15")]
    pub status: i32,
    #[prost(bool, tag = "5")]
    pub anhpncnneig: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Opehkkdoheh {
    #[prost(message, optional, tag = "6")]
    pub hddbdcijcln: ::core::option::Option<Hfjjojlbhhj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pkiononedmk {
    #[prost(uint32, repeated, tag = "14")]
    pub ppmpgogolif: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "5")]
    pub base_avatar_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nopcgfgjall {
    #[prost(message, optional, tag = "7")]
    pub chpmkadcfji: ::core::option::Option<Cfmeoaidkja>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hcniamjdllp {
    #[prost(uint32, tag = "5")]
    pub idbljnjiklg: u32,
    #[prost(uint32, tag = "15")]
    pub jfghjfckgcd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lnfckhoafhk {
    #[prost(message, repeated, tag = "12")]
    pub buff_list: ::prost::alloc::vec::Vec<Hcniamjdllp>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RogueCommonBuffSelectInfo {
    #[prost(message, optional, tag = "14")]
    pub roll_buff_cost_data: ::core::option::Option<ItemCostData>,
    #[prost(uint32, tag = "10")]
    pub source_hint_id: u32,
    #[prost(uint32, tag = "7")]
    pub source_cur_count: u32,
    #[prost(uint32, tag = "2")]
    pub roll_buff_max_count: u32,
    #[prost(uint32, tag = "5")]
    pub source_total_count: u32,
    #[prost(bool, tag = "6")]
    pub can_roll: bool,
    #[prost(uint32, repeated, tag = "4")]
    pub first_buff_type_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "11")]
    pub roll_buff_count: u32,
    #[prost(uint32, tag = "3")]
    pub roll_buff_free_count: u32,
    #[prost(message, repeated, tag = "12")]
    pub select_buff_list: ::prost::alloc::vec::Vec<Hcniamjdllp>,
    #[prost(enumeration = "Mpgalnachlc", tag = "13")]
    pub source_type: i32,
    #[prost(uint32, repeated, tag = "8")]
    pub handbook_unlock_buff_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kdoplelcnpa {
    #[prost(uint32, tag = "4")]
    pub ekpodgmfacb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cfnoailpbhj {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hlcdhikpicl {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nnopcahhonn {
    #[prost(message, optional, tag = "15")]
    pub ekbmknafodg: ::core::option::Option<RogueCommonBuffSelectInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ckckkldngin {
    #[prost(uint32, tag = "7")]
    pub jfghjfckgcd: u32,
    #[prost(message, optional, tag = "11")]
    pub cost_data: ::core::option::Option<ItemCostData>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Njeacjmcbgl {
    #[prost(message, repeated, tag = "14")]
    pub ndfbnaahldm: ::prost::alloc::vec::Vec<Ckckkldngin>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nihpfjoapfe {
    #[prost(message, repeated, tag = "6")]
    pub jnmfighgpbi: ::prost::alloc::vec::Vec<Hcniamjdllp>,
    #[prost(message, repeated, tag = "7")]
    pub oefdabbacih: ::prost::alloc::vec::Vec<Hcniamjdllp>,
    #[prost(uint32, tag = "8")]
    pub cgkhkjbofgk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Malmobcfnbc {
    #[prost(uint32, tag = "7")]
    pub cgkhkjbofgk: u32,
    #[prost(message, repeated, tag = "3")]
    pub oefdabbacih: ::prost::alloc::vec::Vec<Hcniamjdllp>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iidpiilogji {
    #[prost(uint32, tag = "1")]
    pub nomibggldab: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fjdililbfed {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jbdjbndpjfn {
    #[prost(message, repeated, tag = "2")]
    pub kdiphaigdlb: ::prost::alloc::vec::Vec<Hcniamjdllp>,
    #[prost(uint32, tag = "6")]
    pub cgkhkjbofgk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kmpojobokop {
    #[prost(uint32, tag = "5")]
    pub ekpodgmfacb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ejnogiphflb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iggepapjffh {
    #[prost(message, optional, tag = "12")]
    pub oolbondemhe: ::core::option::Option<Lnfckhoafhk>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dlieinflclg {
    #[prost(map = "uint32, uint32", tag = "10")]
    pub konagcdhkkh: ::std::collections::HashMap<u32, u32>,
    #[prost(uint32, tag = "12")]
    pub hjkhojdemob: u32,
    #[prost(uint32, tag = "1")]
    pub nkbehfhlpef: u32,
    #[prost(uint32, tag = "4")]
    pub mmfonffpnjm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dpalbemdnlc {
    #[prost(bool, tag = "4")]
    pub oobfcmifabf: bool,
    #[prost(uint32, tag = "1")]
    pub omaoajjcdmd: u32,
    #[prost(message, optional, tag = "9")]
    pub pabgnbchedp: ::core::option::Option<Dlieinflclg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Klpkdkofjoo {
    #[prost(message, optional, tag = "5")]
    pub cccdaeojjnh: ::core::option::Option<Dlieinflclg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oloiijkndjl {
    #[prost(uint32, tag = "4")]
    pub hjkhojdemob: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mngecpckmoe {
    #[prost(message, optional, tag = "1")]
    pub cccdaeojjnh: ::core::option::Option<Dlieinflclg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mbegpdeleli {
    #[prost(message, optional, tag = "9")]
    pub cccdaeojjnh: ::core::option::Option<Dlieinflclg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ogijdaeonfa {
    #[prost(message, optional, tag = "2")]
    pub pabgnbchedp: ::core::option::Option<Dlieinflclg>,
    #[prost(uint32, tag = "8")]
    pub omaoajjcdmd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bphpfkbhiic {
    #[prost(message, optional, tag = "7")]
    pub cccdaeojjnh: ::core::option::Option<Dlieinflclg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pkgndclahhk {
    #[prost(message, repeated, tag = "11")]
    pub ndjkcdjmbjf: ::prost::alloc::vec::Vec<Dlieinflclg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jkhgmmneidm {
    #[prost(uint32, repeated, tag = "12")]
    pub njnlbkkjela: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "15")]
    pub aocnmejcmbb: ::prost::alloc::vec::Vec<u32>,
    #[prost(enumeration = "Cmhbbmokjjb", tag = "11")]
    pub eoifgpmgfgj: i32,
    #[prost(uint32, tag = "10")]
    pub cgkhkjbofgk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ahndopglglf {
    #[prost(uint32, tag = "9")]
    pub ihmodckcnjj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cebgeenohdi {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mfmckkjaakg {
    #[prost(uint32, repeated, tag = "12")]
    pub nakfcflciim: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Edcoiachpjk {
    #[prost(uint32, repeated, tag = "10")]
    pub lnagohpngfn: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "3")]
    pub cgkhkjbofgk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dkcpgeljmga {
    #[prost(uint32, tag = "3")]
    pub blelaegplel: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nkbidfbkpkj {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mobomdgfoeh {
    #[prost(uint32, repeated, tag = "5")]
    pub ehlnipplipn: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "12")]
    pub cgkhkjbofgk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kmlffkilchi {
    #[prost(uint32, tag = "11")]
    pub paaaonaggij: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ekfcegpdnog {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fojcnmcnnkp {
    #[prost(uint32, tag = "12")]
    pub cgkhkjbofgk: u32,
    #[prost(uint32, repeated, tag = "13")]
    pub mcaomfpolge: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mcaembmjgmj {
    #[prost(uint32, tag = "13")]
    pub kjililkmbba: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fmglpfikegj {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pfilbgogden {
    #[prost(uint32, tag = "2")]
    pub cgkhkjbofgk: u32,
    #[prost(uint32, repeated, tag = "15")]
    pub dneefknbhil: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gflcnddiolm {
    #[prost(uint32, tag = "10")]
    pub cfloalchgng: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aampfleolep {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Anodmonndbe {
    #[prost(uint32, tag = "14")]
    pub lkmmgcbamco: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Idaegnjlpih {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gmmfeddbcfk {
    #[prost(message, optional, tag = "13")]
    pub lgmieboonej: ::core::option::Option<Pkgndclahhk>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cceeilolfmi {
    #[prost(uint32, repeated, tag = "14")]
    pub lfdkacnhafi: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dgnnoddkkfa {
    #[prost(uint32, tag = "8")]
    pub lnkomofdcaa: u32,
    #[prost(uint32, tag = "9")]
    pub ckgdlhbmnpp: u32,
    #[prost(uint32, tag = "4")]
    pub dcjbmapnhba: u32,
    #[prost(uint32, tag = "5")]
    pub gcaglbchocn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Giiiiedbilm {
    #[prost(uint32, tag = "13")]
    pub num: u32,
    #[prost(uint32, tag = "14")]
    pub hempkbbndjj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ffioajgcdoi {
    #[prost(uint32, tag = "11")]
    pub ckondfhadld: u32,
    #[prost(enumeration = "AvatarType", tag = "14")]
    pub avatar_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RogueSyncContextBoardEvent {
    #[prost(uint32, tag = "4")]
    pub modifier_effect_type: u32,
    #[prost(uint32, tag = "15")]
    pub board_event_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hocpkmiknik {
    #[prost(message, optional, tag = "5")]
    pub item_list: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mhfcaolcahc {
    #[prost(message, optional, tag = "13")]
    pub cchjhlnbeob: ::core::option::Option<RogueSyncContextBoardEvent>,
    #[prost(message, optional, tag = "4")]
    pub jbmmknnpdfa: ::core::option::Option<Hocpkmiknik>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gfbhimkamej {
    #[prost(uint32, tag = "14")]
    pub jfjcjmpbhgk: u32,
    #[prost(uint32, tag = "7")]
    pub status: u32,
    #[prost(uint32, tag = "12")]
    pub hnnpgcmhflh: u32,
    #[prost(double, tag = "2")]
    pub anbafhnphlb: f64,
    #[prost(uint32, tag = "15")]
    pub nnimjidjjgi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bldbkfhlemh {
    #[prost(message, optional, tag = "13")]
    pub ohpalflefki: ::core::option::Option<Gfbhimkamej>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kikmllhfoio {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oocinkeifjd {
    #[prost(message, optional, tag = "9")]
    pub ohpalflefki: ::core::option::Option<Gfbhimkamej>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ipgcpjmgcid {
    #[prost(uint32, tag = "15")]
    pub cefneajiklj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jicfbciefol {
    #[prost(message, optional, tag = "8")]
    pub ohpalflefki: ::core::option::Option<Gfbhimkamej>,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Encpnbnlnfc {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dldoncofdld {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(message, optional, tag = "10")]
    pub ohpalflefki: ::core::option::Option<Gfbhimkamej>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bikhamaigik {
    #[prost(uint32, tag = "7")]
    pub jgpmpafjgic: u32,
    #[prost(uint32, tag = "15")]
    pub jfjcjmpbhgk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ocompdegkmk {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(message, optional, tag = "5")]
    pub ohpalflefki: ::core::option::Option<Gfbhimkamej>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mfjckbmkpeo {
    #[prost(uint32, tag = "13")]
    pub hjkhojdemob: u32,
    #[prost(message, optional, tag = "8")]
    pub cost_data: ::core::option::Option<ItemCostData>,
    #[prost(bool, tag = "11")]
    pub jghhfkpbngj: bool,
    #[prost(bool, tag = "4")]
    pub hhidnmnpclm: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Niclofehinn {
    #[prost(bool, tag = "8")]
    pub hhidnmnpclm: bool,
    #[prost(uint32, tag = "14")]
    pub hcnocfjfeph: u32,
    #[prost(message, optional, tag = "10")]
    pub cost_data: ::core::option::Option<ItemCostData>,
    #[prost(bool, tag = "7")]
    pub jghhfkpbngj: bool,
    #[prost(uint32, tag = "3")]
    pub jfghjfckgcd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gfmoddpfjdp {
    #[prost(message, repeated, tag = "4")]
    pub ndjkcdjmbjf: ::prost::alloc::vec::Vec<Mfjckbmkpeo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ipbjhdcmiko {
    #[prost(message, repeated, tag = "14")]
    pub buff_list: ::prost::alloc::vec::Vec<Niclofehinn>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hgcikpblbja {
    #[prost(bool, tag = "1")]
    pub ggliceblcgk: bool,
    #[prost(uint32, tag = "4")]
    pub jmknpgakkhb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kaeldmnfeno {
    #[prost(message, optional, tag = "6")]
    pub flbeikgmkga: ::core::option::Option<Ipbjhdcmiko>,
    #[prost(bool, tag = "14")]
    pub cmijhifknpo: bool,
    #[prost(message, optional, tag = "7")]
    pub knpfhblmpgi: ::core::option::Option<ItemCostData>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Alpdphdojbj {
    #[prost(bool, tag = "4")]
    pub ggliceblcgk: bool,
    #[prost(uint32, tag = "9")]
    pub jmknpgakkhb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ofjncbaffgf {
    #[prost(message, optional, tag = "13")]
    pub ccdamnhkfoe: ::core::option::Option<Gfmoddpfjdp>,
    #[prost(bool, tag = "14")]
    pub cmijhifknpo: bool,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(message, optional, tag = "6")]
    pub knpfhblmpgi: ::core::option::Option<ItemCostData>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kjblbaedhif {
    #[prost(uint32, tag = "10")]
    pub hjkhojdemob: u32,
    #[prost(uint32, tag = "3")]
    pub jmknpgakkhb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gjpkhdghbhg {
    #[prost(uint32, repeated, tag = "12")]
    pub buff_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub jmknpgakkhb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hikoagbmaep {
    #[prost(message, optional, tag = "3")]
    pub ccdamnhkfoe: ::core::option::Option<Gfmoddpfjdp>,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dikjpfnbmln {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(message, optional, tag = "4")]
    pub flbeikgmkga: ::core::option::Option<Ipbjhdcmiko>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Midicpijbpg {
    #[prost(uint32, tag = "5")]
    pub hjkhojdemob: u32,
    #[prost(uint32, tag = "2")]
    pub jmknpgakkhb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ceaeeafpbnd {
    #[prost(message, optional, tag = "15")]
    pub ckianofamoi: ::core::option::Option<Hcniamjdllp>,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dcpjimkapfk {
    #[prost(uint32, tag = "7")]
    pub dccdpalochf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bjkjefhfboj {
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nhopcloldkk {
    #[prost(uint32, tag = "3")]
    pub giibaepcgan: u32,
    #[prost(uint32, tag = "11")]
    pub jmknpgakkhb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iemmlncmkgm {
    #[prost(message, optional, tag = "6")]
    pub gnagbcdmnac: ::core::option::Option<Hcniamjdllp>,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(bool, tag = "12")]
    pub bfknlcpgdeh: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ccjgdlanbel {
    #[prost(uint32, tag = "1")]
    pub jmknpgakkhb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetEnhanceCommonRogueBuffInfoScRsp {
    #[prost(uint32, repeated, tag = "12")]
    pub enhanced_buff_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Adbbkepkand {
    #[prost(uint32, tag = "8")]
    pub maaakbdmpgb: u32,
    #[prost(message, repeated, tag = "5")]
    pub pfppclmplfj: ::prost::alloc::vec::Vec<Alkjdehmeho>,
    #[prost(enumeration = "Bpakkdmjink", tag = "11")]
    pub hempkbbndjj: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Alkjdehmeho {
    #[prost(enumeration = "Mneneelgfmg", tag = "10")]
    pub source: i32,
    #[prost(message, optional, tag = "5")]
    pub ciidclkmcpf: ::core::option::Option<Fcfemlgafkh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fcfemlgafkh {
    #[prost(message, optional, tag = "11")]
    pub illafkgpkpe: ::core::option::Option<Giiiiedbilm>,
    #[prost(message, optional, tag = "14")]
    pub idlndkahccb: ::core::option::Option<Giiiiedbilm>,
    #[prost(message, optional, tag = "1586")]
    pub lenjkjbfmim: ::core::option::Option<Hcniamjdllp>,
    #[prost(message, optional, tag = "1574")]
    pub aofhccicbkd: ::core::option::Option<Hcniamjdllp>,
    #[prost(message, optional, tag = "1073")]
    pub ahffmpkkmlj: ::core::option::Option<Klpkdkofjoo>,
    #[prost(message, optional, tag = "1800")]
    pub mpckdlfebba: ::core::option::Option<Oloiijkndjl>,
    #[prost(message, optional, tag = "516")]
    pub llmceokpogj: ::core::option::Option<Mngecpckmoe>,
    #[prost(message, optional, tag = "520")]
    pub dkdinibdnfh: ::core::option::Option<Mbegpdeleli>,
    #[prost(message, optional, tag = "835")]
    pub aadeepmljhi: ::core::option::Option<Ogijdaeonfa>,
    #[prost(message, optional, tag = "332")]
    pub aigkpocoogp: ::core::option::Option<Bphpfkbhiic>,
    #[prost(message, optional, tag = "2027")]
    pub jappmfhnipd: ::core::option::Option<Ffioajgcdoi>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eheccodalni {
    #[prost(message, optional, tag = "7")]
    pub odackhmafpd: ::core::option::Option<Hahmakeodgg>,
    #[prost(uint32, tag = "11")]
    pub maaakbdmpgb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hahmakeodgg {
    #[prost(uint32, tag = "9")]
    pub lifemnohpkc: u32,
    #[prost(message, optional, tag = "6")]
    pub ciidclkmcpf: ::core::option::Option<Oejjohanopl>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oejjohanopl {
    #[prost(message, optional, tag = "1454")]
    pub ekbmknafodg: ::core::option::Option<RogueCommonBuffSelectInfo>,
    #[prost(message, optional, tag = "1092")]
    pub pdfamlmkpid: ::core::option::Option<Malmobcfnbc>,
    #[prost(message, optional, tag = "1228")]
    pub khoejjpejek: ::core::option::Option<Jbdjbndpjfn>,
    #[prost(message, optional, tag = "527")]
    pub kiidpknaoaf: ::core::option::Option<Jkhgmmneidm>,
    #[prost(message, optional, tag = "406")]
    pub ngfnplmicgd: ::core::option::Option<Mfmckkjaakg>,
    #[prost(message, optional, tag = "575")]
    pub fconcbgkgoi: ::core::option::Option<Edcoiachpjk>,
    #[prost(message, optional, tag = "599")]
    pub belcpimmcdm: ::core::option::Option<Mobomdgfoeh>,
    #[prost(message, optional, tag = "146")]
    pub jlngobafkhk: ::core::option::Option<Fojcnmcnnkp>,
    #[prost(message, optional, tag = "100")]
    pub ofppdaeiana: ::core::option::Option<Pfilbgogden>,
    #[prost(message, optional, tag = "515")]
    pub ofecbbaocgi: ::core::option::Option<Cceeilolfmi>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mbbklgplpdg {
    #[prost(uint32, tag = "6")]
    pub lmgdoeiampo: u32,
    #[prost(message, optional, tag = "1586")]
    pub hcpfckgcgmf: ::core::option::Option<Kdoplelcnpa>,
    #[prost(message, optional, tag = "537")]
    pub ekebaoiegpc: ::core::option::Option<Iidpiilogji>,
    #[prost(message, optional, tag = "295")]
    pub fkfpciodhne: ::core::option::Option<Kmpojobokop>,
    #[prost(message, optional, tag = "308")]
    pub mmbnkifbnhj: ::core::option::Option<Hlcdhikpicl>,
    #[prost(message, optional, tag = "1209")]
    pub kmnoonjppfc: ::core::option::Option<Ahndopglglf>,
    #[prost(message, optional, tag = "1911")]
    pub mnnffeblnbh: ::core::option::Option<Dkcpgeljmga>,
    #[prost(message, optional, tag = "1338")]
    pub djjfnhcfljn: ::core::option::Option<Kmlffkilchi>,
    #[prost(message, optional, tag = "481")]
    pub gehponopimg: ::core::option::Option<Mcaembmjgmj>,
    #[prost(message, optional, tag = "1632")]
    pub goblccndjno: ::core::option::Option<Gflcnddiolm>,
    #[prost(message, optional, tag = "1156")]
    pub knplafpbnnm: ::core::option::Option<Anodmonndbe>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kminollniig {
    #[prost(uint32, tag = "7")]
    pub lifemnohpkc: u32,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(uint32, tag = "14")]
    pub lmgdoeiampo: u32,
    #[prost(message, optional, tag = "1087")]
    pub omjndopajmi: ::core::option::Option<Cfnoailpbhj>,
    #[prost(message, optional, tag = "1314")]
    pub jfonhdfflmb: ::core::option::Option<Fjdililbfed>,
    #[prost(message, optional, tag = "392")]
    pub aefgahohhhn: ::core::option::Option<Ejnogiphflb>,
    #[prost(message, optional, tag = "126")]
    pub alkjlobfaah: ::core::option::Option<Nnopcahhonn>,
    #[prost(message, optional, tag = "2029")]
    pub gomggakhcnc: ::core::option::Option<Cebgeenohdi>,
    #[prost(message, optional, tag = "2047")]
    pub gdppenhpiia: ::core::option::Option<Nkbidfbkpkj>,
    #[prost(message, optional, tag = "1389")]
    pub lindffnfidg: ::core::option::Option<Ekfcegpdnog>,
    #[prost(message, optional, tag = "348")]
    pub lfhmkppjkdk: ::core::option::Option<Fmglpfikegj>,
    #[prost(message, optional, tag = "191")]
    pub nfilffdkcmi: ::core::option::Option<Aampfleolep>,
    #[prost(message, optional, tag = "1779")]
    pub ieocnianlkb: ::core::option::Option<Idaegnjlpih>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cmiehngedeh {
    #[prost(uint32, tag = "5")]
    pub giibaepcgan: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cckejcdolck {
    #[prost(bool, tag = "3")]
    pub bgghncdaboe: bool,
    #[prost(uint32, tag = "11")]
    pub jjfehhmibcb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Abkhjljejbj {
    #[prost(bool, tag = "14")]
    pub bgghncdaboe: bool,
    #[prost(uint32, repeated, tag = "13")]
    pub fjfnpfpcfjl: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "11")]
    pub hblihbdmoda: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Camhekjonfo {
    #[prost(uint32, tag = "13")]
    pub level: u32,
    #[prost(uint32, tag = "9")]
    pub obpjpapapfm: u32,
    #[prost(uint32, tag = "8")]
    pub mpkacbpnmpn: u32,
    #[prost(uint32, repeated, tag = "12")]
    pub jnohodclonm: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "1")]
    pub exp: u32,
    #[prost(uint32, repeated, tag = "3")]
    pub ifcnjdjdnbl: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dojhifppfom {
    #[prost(message, repeated, tag = "15")]
    pub buff_list: ::prost::alloc::vec::Vec<Cmiehngedeh>,
    #[prost(message, repeated, tag = "9")]
    pub cgifaldpbfe: ::prost::alloc::vec::Vec<Camhekjonfo>,
    #[prost(message, repeated, tag = "8")]
    pub aggedhebpah: ::prost::alloc::vec::Vec<Abkhjljejbj>,
    #[prost(message, repeated, tag = "3")]
    pub ndjkcdjmbjf: ::prost::alloc::vec::Vec<Cckejcdolck>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lmahndmfblc {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetRogueHandbookDataScRsp {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(message, optional, tag = "12")]
    pub handbook_info: ::core::option::Option<Dojhifppfom>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Djlgocfamfm {
    #[prost(message, repeated, tag = "4")]
    pub ncikicneokn: ::prost::alloc::vec::Vec<Cmiehngedeh>,
    #[prost(message, repeated, tag = "13")]
    pub lfelphbdpcn: ::prost::alloc::vec::Vec<Abkhjljejbj>,
    #[prost(message, repeated, tag = "6")]
    pub fhdadakcagb: ::prost::alloc::vec::Vec<Cckejcdolck>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bhkkcaalioe {
    #[prost(uint32, repeated, tag = "15")]
    pub mnlknipjekk: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Phcgpheahde {
    #[prost(message, optional, tag = "10")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, repeated, tag = "2")]
    pub afdbdhdchch: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Icfmjhnfhod {
    #[prost(uint32, repeated, tag = "1")]
    pub pbkmcnlijbe: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hladfmhbiii {
    #[prost(message, optional, tag = "2")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, repeated, tag = "6")]
    pub ddgjgnmannh: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mdojlocmnkc {
    #[prost(map = "uint32, uint32", tag = "4")]
    pub egnohemenff: ::std::collections::HashMap<u32, u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hmlcjcgoehi {
    #[prost(int32, tag = "4")]
    pub hncgpmcbnlh: i32,
    #[prost(uint32, tag = "7")]
    pub ffoomfhaooa: u32,
    #[prost(message, optional, tag = "6")]
    pub idmnmapahom: ::core::option::Option<Daneehmkdkn>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mbgnhfbiihj {
    #[prost(uint32, repeated, tag = "1")]
    pub eodnkkeeoga: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mmgmnbonana {
    #[prost(message, optional, tag = "6")]
    pub flbeikgmkga: ::core::option::Option<Iggepapjffh>,
    #[prost(message, optional, tag = "10")]
    pub ccdamnhkfoe: ::core::option::Option<Gmmfeddbcfk>,
    #[prost(message, optional, tag = "11")]
    pub bcjdlipoill: ::core::option::Option<Mdojlocmnkc>,
    #[prost(message, optional, tag = "3")]
    pub dhbfppkhghf: ::core::option::Option<Hmlcjcgoehi>,
    #[prost(message, optional, tag = "12")]
    pub geoijkdcioi: ::core::option::Option<Mbgnhfbiihj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RogueUnlockProgress {
    #[prost(uint32, tag = "13")]
    pub unlock_id: u32,
    #[prost(bool, tag = "15")]
    pub finish: bool,
    #[prost(uint32, tag = "9")]
    pub progress: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Epeedgdbjgg {
    #[prost(message, repeated, tag = "13")]
    pub pdmffdcmfkp: ::prost::alloc::vec::Vec<RogueUnlockProgress>,
    #[prost(enumeration = "Jaaajkhfbdh", tag = "15")]
    pub status: i32,
    #[prost(uint32, tag = "12")]
    pub nhmachllchm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jccemojomaf {
    #[prost(message, repeated, tag = "15")]
    pub jccpeimkhkg: ::prost::alloc::vec::Vec<Epeedgdbjgg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lckmcmmobcm {
    #[prost(uint32, tag = "8")]
    pub opnfplbomie: u32,
    #[prost(uint32, tag = "11")]
    pub jfbkcoabigp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Focnldoiffn {
    #[prost(message, repeated, tag = "14")]
    pub jalbjdlnbhi: ::prost::alloc::vec::Vec<Lckmcmmobcm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gkeomdjoico {
    #[prost(uint32, tag = "9")]
    pub begdejncomn: u32,
    #[prost(uint32, tag = "10")]
    pub ofpcnlipkgo: u32,
    #[prost(uint32, tag = "7")]
    pub hclanhjmake: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eaikkciielm {
    #[prost(enumeration = "Mmeamkolmog", repeated, tag = "15")]
    pub aohlmjmgbmc: ::prost::alloc::vec::Vec<i32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bkoahfihmfa {
    #[prost(message, optional, tag = "15")]
    pub cchcbliamkk: ::core::option::Option<Eaikkciielm>,
    #[prost(message, optional, tag = "5")]
    pub ogipdfmfkke: ::core::option::Option<Gkeomdjoico>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jdpldlgmkaj {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Maebamaiioj {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(message, optional, tag = "14")]
    pub eafohbgekig: ::core::option::Option<Bkoahfihmfa>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gkeappffjim {
    #[prost(message, optional, tag = "12")]
    pub ogipdfmfkke: ::core::option::Option<Gkeomdjoico>,
    #[prost(message, optional, tag = "10")]
    pub cchcbliamkk: ::core::option::Option<Eaikkciielm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bilhokfdmdb {
    #[prost(uint32, tag = "13")]
    pub hianpodfgon: u32,
    #[prost(uint32, repeated, tag = "11")]
    pub ppmpgogolif: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "2")]
    pub base_avatar_id_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(enumeration = "Mlcdpmiblbk", tag = "12")]
    pub status: i32,
    #[prost(uint32, tag = "7")]
    pub mkojmagcnpk: u32,
    #[prost(message, optional, tag = "4")]
    pub oolbondemhe: ::core::option::Option<Lnfckhoafhk>,
    #[prost(message, optional, tag = "9")]
    pub lgmieboonej: ::core::option::Option<Pkgndclahhk>,
    #[prost(uint32, tag = "6")]
    pub map_id: u32,
    #[prost(uint32, tag = "8")]
    pub iadmghfbjmi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mcjiifkfeag {
    #[prost(bool, tag = "8")]
    pub fbibmnmcjdd: bool,
    #[prost(uint32, tag = "15")]
    pub nclffjomnob: u32,
    #[prost(uint32, tag = "10")]
    pub mfjancpnckn: u32,
    #[prost(uint32, tag = "2")]
    pub mohloeaknml: u32,
    #[prost(uint32, tag = "12")]
    pub abankioekci: u32,
    #[prost(uint32, tag = "5")]
    pub battle_id: u32,
    #[prost(uint32, tag = "9")]
    pub bbmcpomcjom: u32,
    #[prost(uint32, tag = "4")]
    pub fcjpmgnohge: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kamoeplhikf {
    #[prost(uint32, tag = "6")]
    pub jlekocjhldk: u32,
    #[prost(uint32, tag = "5")]
    pub bcnbcoijiao: u32,
    #[prost(message, optional, tag = "2")]
    pub pbcnkjjfhnn: ::core::option::Option<Bilhokfdmdb>,
    #[prost(message, optional, tag = "14")]
    pub ceogmcpddam: ::core::option::Option<Mcjiifkfeag>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dbnkijoigik {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Elgcciokpac {
    #[prost(uint32, tag = "3")]
    pub gimnkaohfmj: u32,
    #[prost(message, repeated, tag = "12")]
    pub data: ::prost::alloc::vec::Vec<Kamoeplhikf>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "9")]
    pub gaeipnkgpkm: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "10")]
    pub jngddkmoidi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dbnaoppmgec {
    #[prost(enumeration = "AvatarType", tag = "15")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "12")]
    pub ckondfhadld: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Agjgenafeia {
    #[prost(message, repeated, tag = "11")]
    pub avatar_list: ::prost::alloc::vec::Vec<Dbnaoppmgec>,
    #[prost(uint32, tag = "13")]
    pub gdelcmkiebh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lphgjmgecnh {
    #[prost(message, optional, tag = "2")]
    pub ceogmcpddam: ::core::option::Option<Mcjiifkfeag>,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(message, optional, tag = "4")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lnlfbledkne {
    #[prost(message, optional, tag = "7")]
    pub ceogmcpddam: ::core::option::Option<Mcjiifkfeag>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gpacmdplnfo {
    #[prost(bool, tag = "11")]
    pub akhcgfhmdef: bool,
    #[prost(uint32, tag = "6")]
    pub level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fmgmiknbicc {
    #[prost(message, optional, tag = "12")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, repeated, tag = "6")]
    pub gaeipnkgpkm: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, tag = "8")]
    pub level: u32,
    #[prost(bool, tag = "13")]
    pub akhcgfhmdef: bool,
    #[prost(uint32, tag = "5")]
    pub jngddkmoidi: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jmckoacbbij {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pipdbogmodc {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, tag = "8")]
    pub jngddkmoidi: u32,
    #[prost(uint32, repeated, tag = "13")]
    pub gaeipnkgpkm: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "2")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cfjbahlobnf {
    #[prost(bool, tag = "13")]
    pub nehdkecgphp: bool,
    #[prost(uint32, tag = "5")]
    pub gbbefnkhnja: u32,
    #[prost(uint32, tag = "4")]
    pub nohppiplpjf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bioiadbdpll {
    #[prost(bool, tag = "7")]
    pub nehdkecgphp: bool,
    #[prost(uint32, repeated, tag = "6")]
    pub mlocaldcmia: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "15")]
    pub gbbefnkhnja: u32,
    #[prost(uint32, tag = "13")]
    pub nohppiplpjf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ncmpeamcgbl {
    #[prost(bool, tag = "15")]
    pub nehdkecgphp: bool,
    #[prost(uint32, repeated, tag = "3")]
    pub mlocaldcmia: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "12")]
    pub nohppiplpjf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Difpidpmhde {
    #[prost(bool, tag = "3")]
    pub nehdkecgphp: bool,
    #[prost(uint32, tag = "13")]
    pub npnlgcgiila: u32,
    #[prost(uint32, tag = "12")]
    pub nohppiplpjf: u32,
    #[prost(uint32, repeated, tag = "10")]
    pub mfgknnhbekg: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jhfoaimdlca {
    #[prost(uint32, tag = "4")]
    pub gfbbpaicgdj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jcbdmpecgie {
    #[prost(uint32, tag = "10")]
    pub fngfhbjilkj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Efmfknnhpga {
    #[prost(uint32, tag = "12")]
    pub igknlobmoje: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kageemdbplg {
    #[prost(uint32, tag = "6")]
    pub nohppiplpjf: u32,
    #[prost(uint32, repeated, tag = "11")]
    pub mfgknnhbekg: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "13")]
    pub nehdkecgphp: bool,
    #[prost(uint32, tag = "4")]
    pub dkifiefpobb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ndeegedjjej {
    #[prost(uint32, tag = "9")]
    pub niamdemeojd: u32,
    #[prost(uint32, tag = "2")]
    pub emjhomedjgp: u32,
    #[prost(uint32, tag = "7")]
    pub cgfgkljhffp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Glgicnnbfbp {
    #[prost(uint32, tag = "9")]
    pub giibaepcgan: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nkdmehegmhh {
    #[prost(uint32, tag = "4")]
    pub bmnpahoebpb: u32,
    #[prost(uint32, tag = "2")]
    pub gifbaoolifn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gealmfcgokf {
    #[prost(uint32, tag = "9")]
    pub jojfbcfboio: u32,
    #[prost(uint32, tag = "12")]
    pub num: u32,
    #[prost(uint32, tag = "5")]
    pub hkplcjdglel: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nmmlhgoiblo {
    #[prost(uint32, tag = "9")]
    pub napofmjkloi: u32,
    #[prost(uint32, tag = "6")]
    pub num: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Foinagdobpe {
    #[prost(uint32, tag = "1")]
    pub gfbbpaicgdj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jagfdfphenk {
    #[prost(uint32, tag = "15")]
    pub gbbefnkhnja: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cmgakdgopda {
    #[prost(bool, tag = "13")]
    pub nehdkecgphp: bool,
    #[prost(uint32, tag = "14")]
    pub nohppiplpjf: u32,
    #[prost(uint32, repeated, tag = "15")]
    pub mlocaldcmia: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hnfeifbbofg {
    #[prost(uint32, tag = "11")]
    pub honpageplee: u32,
    #[prost(uint32, tag = "6")]
    pub giibaepcgan: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nlongnddajk {
    #[prost(uint32, tag = "6")]
    pub kjjldglmdoa: u32,
    #[prost(enumeration = "Gmhccidmemo", tag = "12")]
    pub pddegojdbge: i32,
    #[prost(uint32, tag = "5")]
    pub cdhehgjlfko: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hnhfkchepnf {
    #[prost(uint32, repeated, tag = "2")]
    pub impemjjhnnb: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "5")]
    pub nohppiplpjf: u32,
    #[prost(bool, tag = "8")]
    pub nehdkecgphp: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lcnafhajfhp {
    #[prost(uint32, tag = "8")]
    pub eepcgafcafe: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hpccleaplmi {
    #[prost(uint32, tag = "13")]
    pub count: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cfgilhckeci {
    #[prost(message, optional, tag = "3")]
    pub jfbomngkbfj: ::core::option::Option<Nlongnddajk>,
    #[prost(enumeration = "Lcmlaclkndi", tag = "4")]
    pub eoifgpmgfgj: i32,
    #[prost(uint64, tag = "1")]
    pub npnboejcncd: u64,
    #[prost(message, optional, tag = "1033")]
    pub bfhlepabbie: ::core::option::Option<Hnhfkchepnf>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Daneehmkdkn {
    #[prost(message, repeated, tag = "2")]
    pub ajmbppehcnj: ::prost::alloc::vec::Vec<Cfgilhckeci>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ibamndejffe {
    #[prost(message, optional, tag = "12")]
    pub clndegddcec: ::core::option::Option<Cfgilhckeci>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ecgdaghlagn {
    #[prost(uint32, tag = "8")]
    pub pkbdlfomfkh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pkjdpekkigo {
    #[prost(uint32, tag = "6")]
    pub pkbdlfomfkh: u32,
    #[prost(message, optional, tag = "11")]
    pub lbhlmlahhme: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dmikndodooc {
    #[prost(message, optional, tag = "4")]
    pub clndegddcec: ::core::option::Option<Cfgilhckeci>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iopnfacdfjd {
    #[prost(uint64, tag = "4")]
    pub npnboejcncd: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hpocfpdoiha {
    #[prost(enumeration = "Lcmlaclkndi", tag = "4")]
    pub eoifgpmgfgj: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ofimpkgfjgb {
    #[prost(uint32, tag = "12")]
    pub iljghkfdaeh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nljmipjaifk {
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
    #[prost(uint32, tag = "9")]
    pub iljghkfdaeh: u32,
    #[prost(uint32, tag = "13")]
    pub gacha_random: u32,
    #[prost(uint32, repeated, tag = "8")]
    pub lkanljkibmc: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lifhhkgngph {
    #[prost(uint32, tag = "6")]
    pub epgalnglfij: u32,
    #[prost(uint32, tag = "13")]
    pub iljghkfdaeh: u32,
    #[prost(uint32, tag = "14")]
    pub gacha_random: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pfjdhfddnoi {
    #[prost(message, optional, tag = "13")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "12")]
    pub mibgeefgaoo: u32,
    #[prost(uint32, tag = "2")]
    pub obofaekinfk: u32,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(uint32, tag = "15")]
    pub iljghkfdaeh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hmkahnnmapn {
    #[prost(uint32, tag = "13")]
    pub iljghkfdaeh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TakeRollShopRewardScRsp {
    #[prost(uint32, tag = "8")]
    pub roll_shop_id: u32,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(uint32, tag = "14")]
    pub group_type: u32,
    #[prost(message, optional, tag = "1")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneActorInfo {
    #[prost(enumeration = "AvatarType", tag = "8")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "14")]
    pub base_avatar_id: u32,
    #[prost(uint32, tag = "6")]
    pub map_layer: u32,
    #[prost(uint32, tag = "15")]
    pub uid: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dpohjbfkggl {
    #[prost(uint32, tag = "1")]
    pub nljngppfpbb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ggmghgagkgi {
    #[prost(message, optional, tag = "3")]
    pub mdgjahafkgj: ::core::option::Option<Dpohjbfkggl>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneNpcMonsterInfo {
    #[prost(message, optional, tag = "3")]
    pub extra_info: ::core::option::Option<Ggmghgagkgi>,
    #[prost(bool, tag = "14")]
    pub lnbjlnjldio: bool,
    #[prost(bool, tag = "9")]
    pub npmgpmhmfie: bool,
    #[prost(uint32, tag = "6")]
    pub world_level: u32,
    #[prost(uint32, tag = "8")]
    pub event_id: u32,
    #[prost(uint32, tag = "12")]
    pub monster_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ffjcmahlcbo {
    #[prost(uint32, tag = "11")]
    pub ddffonmpkai: u32,
    #[prost(uint32, tag = "4")]
    pub dealffogemo: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mcmgicfegae {
    #[prost(uint32, tag = "15")]
    pub klhedpmgpjj: u32,
    #[prost(bool, tag = "12")]
    pub gpijgjkofgp: bool,
    #[prost(uint32, tag = "2")]
    pub lagacndlgom: u32,
    #[prost(map = "uint32, uint32", tag = "6")]
    pub gbbbnfmgnlp: ::std::collections::HashMap<u32, u32>,
    #[prost(bool, tag = "1")]
    pub eikighoaael: bool,
    #[prost(message, repeated, tag = "9")]
    pub blbmhdmmpkg: ::prost::alloc::vec::Vec<Ffjcmahlcbo>,
    #[prost(uint32, tag = "14")]
    pub nanapcihmje: u32,
    #[prost(uint32, tag = "13")]
    pub lnigemhooda: u32,
    #[prost(bool, tag = "10")]
    pub kihpmoppfbf: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Podaohipjlk {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fifpcmljmmf {
    #[prost(uint32, tag = "3")]
    pub flcajikfmle: u32,
    #[prost(bool, tag = "1")]
    pub apcaodelfcp: bool,
    #[prost(uint32, tag = "8")]
    pub adndljgbnga: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Khnaffjkboa {
    #[prost(message, optional, tag = "6")]
    pub mdgjahafkgj: ::core::option::Option<Mcmgicfegae>,
    #[prost(message, optional, tag = "15")]
    pub gkpbdahdcoo: ::core::option::Option<Fifpcmljmmf>,
    #[prost(message, optional, tag = "7")]
    pub pblibbpiaea: ::core::option::Option<Podaohipjlk>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneNpcInfo {
    #[prost(message, optional, tag = "4")]
    pub extra_info: ::core::option::Option<Khnaffjkboa>,
    #[prost(uint32, tag = "13")]
    pub egeneneoadj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aoabajeclcd {
    #[prost(uint32, tag = "14")]
    pub oglbklfoaam: u32,
    #[prost(uint32, tag = "11")]
    pub aecgcapllon: u32,
    #[prost(uint32, tag = "6")]
    pub ajhhkoopjfg: u32,
    #[prost(uint32, tag = "10")]
    pub fkaejloflbf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PropAeonInfo {
    #[prost(uint32, tag = "10")]
    pub add_exp: u32,
    #[prost(uint32, tag = "9")]
    pub dialogue_group_id: u32,
    #[prost(uint32, tag = "12")]
    pub aeon_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Edennlhkpfh {
    #[prost(bool, tag = "1")]
    pub elfghmfaoph: bool,
    #[prost(bool, tag = "2")]
    pub dfcdbihjlmg: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PropExtraInfo {
    #[prost(message, optional, tag = "11")]
    pub rogue_info: ::core::option::Option<Aoabajeclcd>,
    #[prost(message, optional, tag = "5")]
    pub aeon_info: ::core::option::Option<PropAeonInfo>,
    #[prost(message, optional, tag = "4")]
    pub chess_rogue_info: ::core::option::Option<Edennlhkpfh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ScenePropInfo {
    #[prost(uint32, tag = "4")]
    pub prop_id: u32,
    #[prost(uint64, tag = "11")]
    pub iogkidiccmk: u64,
    #[prost(string, repeated, tag = "12")]
    pub lhohdkbmjdi: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    #[prost(uint32, tag = "7")]
    pub jdnfbehmjng: u32,
    #[prost(message, optional, tag = "3")]
    pub extra_info: ::core::option::Option<PropExtraInfo>,
    #[prost(uint32, tag = "10")]
    pub prop_state: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneSummonUnitInfo {
    #[prost(string, repeated, tag = "2")]
    pub lhohdkbmjdi: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    #[prost(uint32, tag = "6")]
    pub idihabigada: u32,
    #[prost(uint32, tag = "13")]
    pub dpaienfbfkd: u32,
    #[prost(uint32, tag = "5")]
    pub gchkbhgafpm: u32,
    #[prost(int32, tag = "3")]
    pub jdnfbehmjng: i32,
    #[prost(uint64, tag = "12")]
    pub iogkidiccmk: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneEntityInfo {
    #[prost(uint32, tag = "12")]
    pub entity_id: u32,
    #[prost(uint32, tag = "2")]
    pub group_id: u32,
    #[prost(uint32, tag = "1")]
    pub inst_id: u32,
    #[prost(message, optional, tag = "5")]
    pub motion: ::core::option::Option<MotionInfo>,
    #[prost(message, optional, tag = "8")]
    pub actor: ::core::option::Option<SceneActorInfo>,
    #[prost(message, optional, tag = "10")]
    pub npc_monster: ::core::option::Option<SceneNpcMonsterInfo>,
    #[prost(message, optional, tag = "3")]
    pub npc: ::core::option::Option<SceneNpcInfo>,
    #[prost(message, optional, tag = "13")]
    pub prop: ::core::option::Option<ScenePropInfo>,
    #[prost(message, optional, tag = "14")]
    pub summon_unit: ::core::option::Option<SceneSummonUnitInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BuffInfo {
    #[prost(uint32, tag = "5")]
    pub jfghjfckgcd: u32,
    #[prost(uint32, tag = "14")]
    pub level: u32,
    #[prost(uint32, tag = "11")]
    pub base_avatar_id: u32,
    #[prost(map = "string, float", tag = "4")]
    pub dynamic_values: ::std::collections::HashMap<::prost::alloc::string::String, f32>,
    #[prost(uint64, tag = "8")]
    pub ikehdplnlde: u64,
    #[prost(uint32, tag = "1")]
    pub count: u32,
    #[prost(uint32, tag = "13")]
    pub dkalallhike: u32,
    #[prost(float, tag = "9")]
    pub life_time: f32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Phjjalinnlh {
    #[prost(message, repeated, tag = "15")]
    pub buff_list: ::prost::alloc::vec::Vec<BuffInfo>,
    #[prost(uint32, tag = "5")]
    pub entity_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jbehefmdkkb {
    #[prost(uint32, tag = "12")]
    pub value: u32,
    #[prost(uint32, tag = "2")]
    pub hmdpjenfiok: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hhohdlnmihp {
    #[prost(string, tag = "7")]
    pub ijddioeikge: ::prost::alloc::string::String,
    #[prost(uint32, tag = "15")]
    pub group_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dheehbimoac {
    #[prost(uint32, tag = "6")]
    pub gjdjpahdfnh: u32,
    #[prost(uint32, tag = "1")]
    pub anjedekbjhh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dhkacjhaoid {
    #[prost(uint32, tag = "6")]
    pub state: u32,
    #[prost(message, repeated, tag = "7")]
    pub entity_list: ::prost::alloc::vec::Vec<SceneEntityInfo>,
    #[prost(uint32, tag = "4")]
    pub group_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pkllmpkdemc {
    #[prost(uint32, tag = "8")]
    pub state: u32,
    #[prost(bool, tag = "10")]
    pub iceciooadfm: bool,
    #[prost(uint32, tag = "11")]
    pub group_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jigafidmcgd {
    #[prost(uint32, repeated, tag = "14")]
    pub lcnehkckffo: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "9")]
    pub lfldefiilka: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "1")]
    pub bldiomldjml: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "4")]
    pub ldfaglecejc: ::prost::alloc::vec::Vec<Mission>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneInfo {
    #[prost(uint32, tag = "5")]
    pub plane_id: u32,
    #[prost(uint32, tag = "1")]
    pub game_mode_type: u32,
    #[prost(uint32, tag = "15")]
    pub entry_id: u32,
    #[prost(message, repeated, tag = "1768")]
    pub kkbiifpaleo: ::prost::alloc::vec::Vec<Pkllmpkdemc>,
    #[prost(message, repeated, tag = "497")]
    pub chhmmbdhjpg: ::prost::alloc::vec::Vec<Dhkacjhaoid>,
    #[prost(uint32, repeated, tag = "9")]
    pub phicefeaigb: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "7")]
    pub env_buff_list: ::prost::alloc::vec::Vec<BuffInfo>,
    #[prost(uint32, tag = "8")]
    pub floor_id: u32,
    #[prost(message, optional, tag = "190")]
    pub okecgnnkfmh: ::core::option::Option<Jigafidmcgd>,
    #[prost(message, repeated, tag = "4")]
    pub joblagnnbhc: ::prost::alloc::vec::Vec<Hhohdlnmihp>,
    #[prost(uint32, tag = "2")]
    pub behnfkefeen: u32,
    #[prost(map = "uint32, message", tag = "14")]
    pub mjlicfdfjhh: ::std::collections::HashMap<u32, Dheehbimoac>,
    #[prost(uint32, tag = "12")]
    pub pbfgagecpcd: u32,
    #[prost(uint32, tag = "6")]
    pub oeipegeoedk: u32,
    #[prost(message, repeated, tag = "13")]
    pub ekhjdpkbjlm: ::prost::alloc::vec::Vec<Phjjalinnlh>,
    #[prost(uint32, repeated, tag = "3")]
    pub lpehniejlmg: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "10")]
    pub entity_list: ::prost::alloc::vec::Vec<SceneEntityInfo>,
    #[prost(uint32, tag = "1898")]
    pub cngakkcmonh: u32,
    #[prost(map = "string, int32", tag = "1331")]
    pub fklafkkiofm: ::std::collections::HashMap<::prost::alloc::string::String, i32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EntityMotion {
    #[prost(bool, tag = "8")]
    pub obimconbcii: bool,
    #[prost(message, optional, tag = "1")]
    pub motion: ::core::option::Option<MotionInfo>,
    #[prost(uint32, tag = "4")]
    pub entity_id: u32,
    #[prost(uint32, tag = "12")]
    pub map_layer: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneEntityMoveCsReq {
    #[prost(uint64, tag = "12")]
    pub kfcpdbdmpen: u64,
    #[prost(uint32, tag = "9")]
    pub entry_id: u32,
    #[prost(message, repeated, tag = "11")]
    pub entity_motion_list: ::prost::alloc::vec::Vec<EntityMotion>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneEntityMoveScRsp {
    #[prost(message, repeated, tag = "15")]
    pub entity_motion_list: ::prost::alloc::vec::Vec<EntityMotion>,
    #[prost(message, optional, tag = "5")]
    pub download_data: ::core::option::Option<ClientDownloadData>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneEntityMoveScNotify {
    #[prost(uint32, tag = "15")]
    pub entity_id: u32,
    #[prost(uint32, tag = "13")]
    pub entry_id: u32,
    #[prost(message, optional, tag = "12")]
    pub motion: ::core::option::Option<MotionInfo>,
    #[prost(uint32, tag = "8")]
    pub oeipegeoedk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Neomapjgokg {
    #[prost(uint32, tag = "4")]
    pub lidodilfpnn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct InteractPropCsReq {
    #[prost(uint32, tag = "10")]
    pub interact_id: u32,
    #[prost(uint32, tag = "11")]
    pub prop_entity_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct InteractPropScRsp {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(uint32, tag = "7")]
    pub prop_state: u32,
    #[prost(uint32, tag = "11")]
    pub prop_entity_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kaijnnbaieb {
    #[prost(uint32, tag = "5")]
    pub opjbhpfmeon: u32,
    #[prost(enumeration = "Aggoobcfjlh", tag = "13")]
    pub nadjlhldfbk: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eeangppmanh {
    #[prost(string, tag = "14")]
    pub mlmldhkbplm: ::prost::alloc::string::String,
    #[prost(float, tag = "5")]
    pub value: f32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ckjmagdkfjj {
    #[prost(uint32, repeated, tag = "10")]
    pub gohiiohfmfp: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mpemgbdkigg {
    #[prost(message, repeated, tag = "6")]
    pub elbdngbakop: ::prost::alloc::vec::Vec<Ckjmagdkfjj>,
    #[prost(uint32, tag = "8")]
    pub elgjckaejld: u32,
    #[prost(uint32, tag = "7")]
    pub oknicldeddl: u32,
    #[prost(uint32, repeated, tag = "13")]
    pub jpieajikioh: ::prost::alloc::vec::Vec<u32>,
    #[prost(enumeration = "Njjdcpggfma", repeated, tag = "11")]
    pub ibndpdpcdjh: ::prost::alloc::vec::Vec<i32>,
    #[prost(uint32, tag = "5")]
    pub oajohliocmg: u32,
    #[prost(uint32, repeated, tag = "15")]
    pub hjopkcdlmln: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "2")]
    pub hbepilaamal: ::core::option::Option<MotionInfo>,
    #[prost(message, repeated, tag = "10")]
    pub dynamic_values: ::prost::alloc::vec::Vec<Eeangppmanh>,
    #[prost(uint32, tag = "4")]
    pub skill_index: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ifiohnjlehh {
    #[prost(message, optional, tag = "7")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
    #[prost(message, repeated, tag = "14")]
    pub pbgpinglheg: ::prost::alloc::vec::Vec<Kaijnnbaieb>,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(uint32, tag = "3")]
    pub elgjckaejld: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oepmjfojhci {
    #[prost(uint32, tag = "6")]
    pub oajohliocmg: u32,
    #[prost(uint32, tag = "15")]
    pub elgjckaejld: u32,
    #[prost(uint32, tag = "13")]
    pub skill_index: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gniimeebekc {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(uint32, tag = "11")]
    pub elgjckaejld: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Caecklccnop {
    #[prost(uint32, tag = "11")]
    pub elgjckaejld: u32,
    #[prost(uint32, tag = "10")]
    pub njjbfegnhjc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneEnterStageCsReq {
    #[prost(uint32, tag = "5")]
    pub event_id: u32,
    #[prost(bool, tag = "6")]
    pub hgnofcljbmb: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneEnterStageScRsp {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, optional, tag = "6")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetCurSceneInfoCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetCurSceneInfoScRsp {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(message, optional, tag = "3")]
    pub scene: ::core::option::Option<SceneInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bhahceadcck {
    #[prost(uint32, tag = "10")]
    pub entity_id: u32,
    #[prost(message, optional, tag = "7")]
    pub dpbkdbggime: ::core::option::Option<BuffInfo>,
    #[prost(uint32, tag = "2")]
    pub dpfjogmodlh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kjppbcalhjg {
    #[prost(message, repeated, tag = "3")]
    pub kggcclclkoo: ::prost::alloc::vec::Vec<Bhahceadcck>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SpringRefreshCsReq {
    #[prost(uint32, tag = "1")]
    pub plane_id: u32,
    #[prost(uint32, tag = "8")]
    pub floor_id: u32,
    #[prost(uint32, tag = "13")]
    pub prop_entity_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SpringRefreshScRsp {
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LastSpringRefreshTimeNotify {
    #[prost(int64, tag = "4")]
    pub last_time: i64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReturnLastTownCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReturnLastTownScRsp {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(message, optional, tag = "14")]
    pub scene: ::core::option::Option<SceneInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EnterSectionCsReq {
    #[prost(uint32, tag = "12")]
    pub section_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EnterSectionScRsp {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetCurInteractEntityCsReq {
    #[prost(uint32, tag = "9")]
    pub entity_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetCurInteractEntityScRsp {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RecoverAllLineupCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RecoverAllLineupScRsp {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SavePointsInfoNotify {
    #[prost(int64, tag = "13")]
    pub refresh_time: i64,
    #[prost(uint32, tag = "9")]
    pub valid_times: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StartCocoonStageCsReq {
    #[prost(uint32, tag = "1")]
    pub world_level: u32,
    #[prost(uint32, tag = "9")]
    pub prop_entity_id: u32,
    #[prost(uint32, tag = "2")]
    pub wave: u32,
    #[prost(uint32, tag = "3")]
    pub cocoon_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StartCocoonStageScRsp {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(uint32, tag = "3")]
    pub prop_entity_id: u32,
    #[prost(uint32, tag = "11")]
    pub cocoon_id: u32,
    #[prost(uint32, tag = "13")]
    pub wave: u32,
    #[prost(message, optional, tag = "14")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EntityBindPropCsReq {
    #[prost(bool, tag = "9")]
    pub is_bind: bool,
    #[prost(message, optional, tag = "2")]
    pub motion: ::core::option::Option<MotionInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EntityBindPropScRsp {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetClientPausedCsReq {
    #[prost(bool, tag = "7")]
    pub paused: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetClientPausedScRsp {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(bool, tag = "11")]
    pub paused: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fadgemijgbi {
    #[prost(uint32, tag = "10")]
    pub entity_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bodieeedenk {
    #[prost(uint32, tag = "8")]
    pub entity_id: u32,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Niejalmeaca {
    #[prost(uint32, tag = "11")]
    pub world_level: u32,
    #[prost(uint32, tag = "14")]
    pub entity_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ajkpaakkceo {
    #[prost(uint32, tag = "14")]
    pub world_level: u32,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(uint32, tag = "3")]
    pub entity_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Acggilenijm {
    #[prost(uint32, tag = "8")]
    pub ckondfhadld: u32,
    #[prost(uint32, tag = "2")]
    pub iheoffagmba: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hglkmacbmee {
    #[prost(uint32, tag = "3")]
    pub cfeilkajpfb: u32,
    #[prost(message, repeated, tag = "11")]
    pub ilngpcmoehd: ::prost::alloc::vec::Vec<Acggilenijm>,
    #[prost(bool, tag = "14")]
    pub kjlophlhdlp: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Naecjbfddke {
    #[prost(uint32, tag = "5")]
    pub nnfamcomlfl: u32,
    #[prost(int64, tag = "10")]
    pub bgfaiibkhie: i64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ljlgoilpdeb {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Egkkgjolpga {
    #[prost(message, optional, tag = "3")]
    pub opedhdnagaf: ::core::option::Option<Hglkmacbmee>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
    #[prost(message, optional, tag = "6")]
    pub plfhoaafkbm: ::core::option::Option<Naecjbfddke>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nihlkeeooji {
    #[prost(message, optional, tag = "12")]
    pub opedhdnagaf: ::core::option::Option<Hglkmacbmee>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Caeonnaajke {
    #[prost(message, optional, tag = "8")]
    pub opedhdnagaf: ::core::option::Option<Hglkmacbmee>,
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nkbbidfonnf {
    #[prost(uint32, tag = "7")]
    pub floor_id: u32,
    #[prost(uint32, tag = "5")]
    pub plane_id: u32,
    #[prost(uint32, tag = "9")]
    pub prop_entity_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SpringRecoverScRsp {
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(message, optional, tag = "8")]
    pub heal_pool_info: ::core::option::Option<Naecjbfddke>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Afijjhclabo {
    #[prost(message, optional, tag = "12")]
    pub plfhoaafkbm: ::core::option::Option<Naecjbfddke>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bdhfjdbnlpk {
    #[prost(uint32, tag = "3")]
    pub id: u32,
    #[prost(uint32, tag = "14")]
    pub prop_entity_id: u32,
    #[prost(uint32, tag = "1")]
    pub floor_id: u32,
    #[prost(enumeration = "AvatarType", tag = "5")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "2")]
    pub plane_id: u32,
    #[prost(bool, tag = "15")]
    pub egmdfihdacl: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SpringRecoverSingleAvatarScRsp {
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(uint32, tag = "8")]
    pub hp: u32,
    #[prost(enumeration = "AvatarType", tag = "3")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "5")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kngpiehgcdl {
    #[prost(uint32, tag = "5")]
    pub plane_id: u32,
    #[prost(message, optional, tag = "11")]
    pub hdnkgkecjdm: ::core::option::Option<Jbehefmdkkb>,
    #[prost(uint32, tag = "10")]
    pub floor_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oemfljiabeo {
    #[prost(uint32, tag = "10")]
    pub entry_id: u32,
    #[prost(uint32, tag = "14")]
    pub group_id: u32,
    #[prost(string, tag = "6")]
    pub ijddioeikge: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Chjapoecejl {
    #[prost(uint32, tag = "15")]
    pub group_id: u32,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(uint32, tag = "11")]
    pub entry_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pmmeddcpbol {
    #[prost(uint32, tag = "12")]
    pub stage_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gklljfjihko {
    #[prost(uint32, tag = "8")]
    pub stage_id: u32,
    #[prost(message, optional, tag = "10")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gfckmgmnmnm {
    #[prost(message, optional, tag = "7")]
    pub eicmnaljlhb: ::core::option::Option<EntityMotion>,
    #[prost(uint32, tag = "2")]
    pub entry_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eogjjcbdadn {
    #[prost(message, optional, tag = "7")]
    pub eicmnaljlhb: ::core::option::Option<EntityMotion>,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(uint32, tag = "1")]
    pub oeipegeoedk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lckgkdehclb {
    #[prost(bool, tag = "4")]
    pub bfpgcodlocf: bool,
    #[prost(uint32, tag = "2")]
    pub entry_id: u32,
    #[prost(uint32, tag = "13")]
    pub maplanefddc: u32,
    #[prost(uint32, tag = "1")]
    pub djdbkfnekpf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ehhfgomdfkd {
    #[prost(bool, tag = "9")]
    pub bfpgcodlocf: bool,
    #[prost(bool, tag = "15")]
    pub leknfnoddep: bool,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jdokmmikidp {
    #[prost(message, optional, tag = "11")]
    pub lineup: ::core::option::Option<LineupInfo>,
    #[prost(enumeration = "Ffnhcbelgpd", tag = "8")]
    pub bpodijpdnnk: i32,
    #[prost(message, optional, tag = "15")]
    pub scene: ::core::option::Option<SceneInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bkpebkeapjh {
    #[prost(message, optional, tag = "1")]
    pub ckbbbokbdao: ::core::option::Option<ItemList>,
    #[prost(message, optional, tag = "3")]
    pub nefgigkdplp: ::core::option::Option<ItemList>,
    #[prost(message, optional, tag = "7")]
    pub jceiakbbjap: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fkjoeabiioe {
    #[prost(uint32, repeated, tag = "1")]
    pub dmkkkfnkofh: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "11")]
    pub entry_id: u32,
    #[prost(bool, tag = "6")]
    pub dhdoicckifl: bool,
    #[prost(uint32, tag = "12")]
    pub jfamojfhhdl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kangcibfhee {
    #[prost(uint32, tag = "15")]
    pub group_id: u32,
    #[prost(uint32, tag = "1")]
    pub ifjocipnpgd: u32,
    #[prost(uint32, tag = "12")]
    pub state: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gecjjlmabhp {
    #[prost(int64, tag = "14")]
    pub opmnklhfdch: i64,
    #[prost(uint32, tag = "8")]
    pub group_id: u32,
    #[prost(bool, tag = "5")]
    pub ndcdcamadbh: bool,
    #[prost(uint32, repeated, tag = "15")]
    pub ilbjebgandn: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gbiimoglajl {
    #[prost(enumeration = "Kihbdaniehp", tag = "3")]
    pub gommoeicmjg: i32,
    #[prost(uint32, tag = "11")]
    pub niijpgojchd: u32,
    #[prost(uint32, tag = "2")]
    pub okchdeemhbb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kbbeoemcdhi {
    #[prost(uint32, tag = "4")]
    pub feiakppdjea: u32,
    #[prost(uint32, tag = "3")]
    pub iookcfnfjha: u32,
    #[prost(uint32, tag = "1")]
    pub ipnhjoomhdm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fjniajephmj {
    #[prost(uint32, repeated, tag = "13")]
    pub ojlnmnehgai: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "11")]
    pub aechnhklpkp: ::prost::alloc::vec::Vec<Kbbeoemcdhi>,
    #[prost(message, repeated, tag = "15")]
    pub cgkfbhoadpc: ::prost::alloc::vec::Vec<Kangcibfhee>,
    #[prost(message, repeated, tag = "6")]
    pub dcbdhkkkpgd: ::prost::alloc::vec::Vec<Gbiimoglajl>,
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "2")]
    pub pmolfbcbfpe: ::prost::alloc::vec::Vec<Gecjjlmabhp>,
    #[prost(uint32, tag = "12")]
    pub entry_id: u32,
    #[prost(uint32, tag = "14")]
    pub kjlbpaefaff: u32,
    #[prost(uint32, tag = "7")]
    pub cngakkcmonh: u32,
    #[prost(uint32, repeated, tag = "10")]
    pub phicefeaigb: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cegeebldbke {
    #[prost(uint32, tag = "6")]
    pub entry_id: u32,
    #[prost(uint32, repeated, tag = "3")]
    pub ojlnmnehgai: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "8")]
    pub cgkfbhoadpc: ::prost::alloc::vec::Vec<Kangcibfhee>,
    #[prost(uint32, tag = "10")]
    pub kjlbpaefaff: u32,
    #[prost(message, repeated, tag = "14")]
    pub dcbdhkkkpgd: ::prost::alloc::vec::Vec<Gbiimoglajl>,
    #[prost(uint32, repeated, tag = "9")]
    pub phicefeaigb: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "13")]
    pub pmolfbcbfpe: ::prost::alloc::vec::Vec<Gecjjlmabhp>,
    #[prost(message, repeated, tag = "2")]
    pub mhefdgcamjl: ::prost::alloc::vec::Vec<Fjniajephmj>,
    #[prost(bool, tag = "5")]
    pub dhdoicckifl: bool,
    #[prost(uint32, tag = "4")]
    pub jfamojfhhdl: u32,
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Glknjjgjgjn {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Onfclaedboj {
    #[prost(uint32, tag = "7")]
    pub baokagnfnab: u32,
    #[prost(uint32, tag = "11")]
    pub nkbehfhlpef: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ppjlpfbfbhd {
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dceecobdeko {
    #[prost(enumeration = "Oigihagkoib", tag = "14")]
    pub bpodijpdnnk: i32,
    #[prost(uint32, tag = "1")]
    pub baokagnfnab: u32,
    #[prost(uint32, tag = "15")]
    pub anjedekbjhh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lmkkjhdeaph {
    #[prost(uint32, tag = "1")]
    pub ifmmefaoeoa: u32,
    #[prost(uint32, tag = "6")]
    pub baokagnfnab: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ijpkjflgcgn {
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fhjnibeddad {
    #[prost(map = "string, int32", tag = "6")]
    pub mbpmoihjnfi: ::std::collections::HashMap<::prost::alloc::string::String, i32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nmbdnhoimim {
    #[prost(uint32, repeated, tag = "1")]
    pub dmkkkfnkofh: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pokegknhbga {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "8")]
    pub ojlnmnehgai: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gffbkjofnad {
    #[prost(message, optional, tag = "3")]
    pub glalelmdamm: ::core::option::Option<SceneEntityInfo>,
    #[prost(uint32, tag = "8")]
    pub mggfjbdchjh: u32,
    #[prost(uint32, tag = "11")]
    pub fimallpbobk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jnofbbanolk {
    #[prost(uint32, tag = "4")]
    pub state: u32,
    #[prost(uint32, tag = "1")]
    pub group_id: u32,
    #[prost(message, repeated, tag = "14")]
    pub fiiciciambe: ::prost::alloc::vec::Vec<Gffbkjofnad>,
    #[prost(enumeration = "Njdmhcchfdj", tag = "7")]
    pub kppckepfpce: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ljihfeagpcl {
    #[prost(message, repeated, tag = "14")]
    pub kpfomkdmoce: ::prost::alloc::vec::Vec<Jnofbbanolk>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kekgblohgpj {
    #[prost(uint32, tag = "2")]
    pub oekbjnjeedf: u32,
    #[prost(uint32, tag = "5")]
    pub group_id: u32,
    #[prost(uint32, tag = "4")]
    pub entry_id: u32,
    #[prost(uint32, tag = "3")]
    pub emfppbjclgp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kopeponfokj {
    #[prost(message, optional, tag = "8")]
    pub ifhpffolnae: ::core::option::Option<Kekgblohgpj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bmoicojomde {
    #[prost(message, optional, tag = "8")]
    pub ifhpffolnae: ::core::option::Option<Kekgblohgpj>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eonjoanemal {
    #[prost(message, optional, tag = "7")]
    pub ifhpffolnae: ::core::option::Option<Kekgblohgpj>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lpllljogfeh {
    #[prost(uint32, tag = "7")]
    pub plane_id: u32,
    #[prost(uint32, tag = "13")]
    pub floor_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Alookfpihdh {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mkgidalegbd {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "13")]
    pub lejonbbgdnn: ::prost::alloc::vec::Vec<Lpllljogfeh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pbbimffonja {
    #[prost(message, repeated, tag = "11")]
    pub lejonbbgdnn: ::prost::alloc::vec::Vec<Lpllljogfeh>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hkcacgbemlg {
    #[prost(uint32, repeated, tag = "4")]
    pub nomkhjdfndd: ::prost::alloc::vec::Vec<u32>,
    #[prost(string, tag = "9")]
    pub hmhfjkkijpa: ::prost::alloc::string::String,
    #[prost(message, optional, tag = "15")]
    pub hpagkcpnngc: ::core::option::Option<MotionInfo>,
    #[prost(uint32, tag = "11")]
    pub epogpfgdalp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ldbjedelkji {
    #[prost(string, tag = "4")]
    pub hmhfjkkijpa: ::prost::alloc::string::String,
    #[prost(bool, tag = "10")]
    pub hdkgompcgph: bool,
    #[prost(uint32, tag = "13")]
    pub epogpfgdalp: u32,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dliachmbbmj {
    #[prost(uint32, repeated, tag = "6")]
    pub nomkhjdfndd: ::prost::alloc::vec::Vec<u32>,
    #[prost(string, tag = "4")]
    pub hmhfjkkijpa: ::prost::alloc::string::String,
    #[prost(uint32, tag = "2")]
    pub epogpfgdalp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bgbncmmbdmi {
    #[prost(uint32, repeated, tag = "15")]
    pub gohiiohfmfp: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Diplgalkehc {
    #[prost(uint32, repeated, tag = "4")]
    pub gohiiohfmfp: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kkbapmgmmcb {
    #[prost(uint32, repeated, tag = "8")]
    pub dmkkkfnkofh: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Henagdieido {
    #[prost(uint32, tag = "4")]
    pub world_level: u32,
    #[prost(uint32, tag = "2")]
    pub cocoon_id: u32,
    #[prost(uint32, tag = "11")]
    pub wave: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pmdmnjabkld {
    #[prost(uint32, tag = "10")]
    pub wave: u32,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(uint32, tag = "14")]
    pub cocoon_id: u32,
    #[prost(message, optional, tag = "5")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nljpccbnmhe {
    #[prost(uint32, tag = "1")]
    pub world_level: u32,
    #[prost(uint32, tag = "13")]
    pub mghfepanldd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pklglfclahl {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(uint32, tag = "9")]
    pub mghfepanldd: u32,
    #[prost(message, optional, tag = "10")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
    #[prost(uint32, tag = "5")]
    pub world_level: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cemdfbimlia {
    #[prost(uint32, tag = "12")]
    pub entry_id: u32,
    #[prost(uint32, tag = "7")]
    pub maplanefddc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eaioidkgglc {
    #[prost(bytes = "vec", tag = "13")]
    pub data: ::prost::alloc::vec::Vec<u8>,
    #[prost(uint32, tag = "11")]
    pub ckchamcndpp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jajmoojhabc {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nlhefcjmhgi {
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "8")]
    pub nijjlceklfm: ::prost::alloc::vec::Vec<Eaioidkgglc>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Elobjfekfid {
    #[prost(uint32, tag = "15")]
    pub ckchamcndpp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fghnppflahk {
    #[prost(message, optional, tag = "10")]
    pub cnkpkjfblgn: ::core::option::Option<Eaioidkgglc>,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ikfkpamniml {
    #[prost(message, optional, tag = "8")]
    pub cnkpkjfblgn: ::core::option::Option<Eaioidkgglc>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cckgolmdngk {
    #[prost(uint32, tag = "1")]
    pub ckchamcndpp: u32,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Shop {
    #[prost(int64, tag = "9")]
    pub end_time: i64,
    #[prost(int64, tag = "5")]
    pub begin_time: i64,
    #[prost(uint64, tag = "14")]
    pub city_taken_level_reward: u64,
    #[prost(message, repeated, tag = "7")]
    pub goods_list: ::prost::alloc::vec::Vec<Goods>,
    #[prost(uint32, tag = "15")]
    pub city_level: u32,
    #[prost(uint32, tag = "11")]
    pub city_exp: u32,
    #[prost(uint32, tag = "6")]
    pub shop_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Goods {
    #[prost(uint32, tag = "6")]
    pub item_id: u32,
    #[prost(int64, tag = "2")]
    pub begin_time: i64,
    #[prost(uint32, tag = "14")]
    pub buy_times: u32,
    #[prost(uint32, tag = "13")]
    pub goods_id: u32,
    #[prost(int64, tag = "3")]
    pub end_time: i64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iigehmdpadb {
    #[prost(uint32, tag = "5")]
    pub bhbnegpionn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetShopListScRsp {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "8")]
    pub shop_list: ::prost::alloc::vec::Vec<Shop>,
    #[prost(uint32, tag = "7")]
    pub shop_type: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bhddhkkchjo {
    #[prost(uint32, tag = "11")]
    pub klihmdbpcnc: u32,
    #[prost(uint32, tag = "9")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "1")]
    pub jmknpgakkhb: u32,
    #[prost(uint32, tag = "8")]
    pub ciojdeodepl: u32,
    #[prost(uint32, tag = "3")]
    pub kafhighfafg: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BuyGoodsScRsp {
    #[prost(uint32, tag = "1")]
    pub goods_id: u32,
    #[prost(uint32, tag = "8")]
    pub goods_buy_times: u32,
    #[prost(uint32, tag = "3")]
    pub shop_id: u32,
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(message, optional, tag = "2")]
    pub return_item_list: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lmdefblhgdj {
    #[prost(uint32, tag = "9")]
    pub level: u32,
    #[prost(uint32, tag = "2")]
    pub klihmdbpcnc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TakeCityShopRewardScRsp {
    #[prost(uint32, tag = "5")]
    pub level: u32,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(uint32, tag = "7")]
    pub shop_id: u32,
    #[prost(message, optional, tag = "3")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CityShopInfoScNotify {
    #[prost(uint32, tag = "3")]
    pub level: u32,
    #[prost(uint32, tag = "1")]
    pub shop_id: u32,
    #[prost(uint32, tag = "5")]
    pub exp: u32,
    #[prost(uint64, tag = "9")]
    pub taken_level_reward: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mjnbgfihjbn {
    #[prost(uint32, tag = "15")]
    pub gijclkpnlad: u32,
    #[prost(uint32, repeated, tag = "13")]
    pub efcapmadedp: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "3")]
    pub unique_id: u32,
    #[prost(uint32, repeated, tag = "10")]
    pub item_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "9")]
    pub hcfdockokpn: bool,
    #[prost(uint32, tag = "2")]
    pub kabganlppfh: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ccgfcobhocj {
    #[prost(uint32, tag = "2")]
    pub kabganlppfh: u32,
    #[prost(uint32, tag = "10")]
    pub pabgjpehnah: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pmapmebiclj {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eibbppkjlpm {
    #[prost(uint32, repeated, tag = "1")]
    pub hpcmcaljhna: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(uint32, tag = "12")]
    pub gfpnbfimchh: u32,
    #[prost(uint32, repeated, tag = "15")]
    pub dljhfijlfhm: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "8")]
    pub mpmdlnnndkd: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "10")]
    pub acdnikmdddi: ::prost::alloc::vec::Vec<Mjnbgfihjbn>,
    #[prost(uint32, repeated, tag = "7")]
    pub bcnhbigmkaj: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "9")]
    pub hbmdpmmbcda: ::prost::alloc::vec::Vec<Ccgfcobhocj>,
    #[prost(uint32, repeated, tag = "14")]
    pub hpcdceknfgh: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fihacfhmbmh {
    #[prost(uint32, repeated, tag = "2")]
    pub iofkbljmkea: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "1")]
    pub enaedbkakel: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Piblikanmdl {
    #[prost(message, repeated, tag = "1")]
    pub dacjpdjfckg: ::prost::alloc::vec::Vec<Ccgfcobhocj>,
    #[prost(bool, tag = "3")]
    pub fmegelgmokj: bool,
    #[prost(message, optional, tag = "5")]
    pub dpinmcjagjo: ::core::option::Option<Mjnbgfihjbn>,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pfcdmcngkmf {
    #[prost(uint32, tag = "8")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "5")]
    pub unique_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Obdbkahdfne {
    #[prost(message, repeated, tag = "13")]
    pub dacjpdjfckg: ::prost::alloc::vec::Vec<Ccgfcobhocj>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(message, optional, tag = "14")]
    pub bllhcjoaoim: ::core::option::Option<Mjnbgfihjbn>,
    #[prost(bool, tag = "15")]
    pub fmegelgmokj: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cjlgemninmc {
    #[prost(uint32, tag = "5")]
    pub fmjelgidfng: u32,
    #[prost(uint32, tag = "13")]
    pub op_type: u32,
    #[prost(uint32, tag = "14")]
    pub lkloblmmpgj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fgpdmkoiill {
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "6")]
    pub bcnhbigmkaj: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nkdgaddikkm {
    #[prost(uint32, repeated, tag = "6")]
    pub ahpgfbpnbgl: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bbakijkmahj {
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "12")]
    pub cncmfancfmk: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Klnpnbecajh {
    #[prost(bool, tag = "5")]
    pub lfogbcgedbm: bool,
    #[prost(message, repeated, tag = "15")]
    pub omddhdfenml: ::prost::alloc::vec::Vec<Mjnbgfihjbn>,
    #[prost(bool, tag = "10")]
    pub fmegelgmokj: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iffdinmegpp {
    #[prost(uint32, tag = "5")]
    pub gifbaoolifn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bnkmlnjdakn {
    #[prost(uint32, tag = "12")]
    pub retcode: u32,
    #[prost(uint32, tag = "15")]
    pub gifbaoolifn: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nofeoamheod {
    #[prost(uint32, tag = "5")]
    pub hphkhgkffgk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bjnlmggkbma {
    #[prost(message, optional, tag = "4")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "11")]
    pub hphkhgkffgk: u32,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Glecfdbneol {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ckmbdglnlkg {
    #[prost(uint32, repeated, tag = "15")]
    pub ppmpgogolif: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "2")]
    pub fcmegdkiahj: u32,
    #[prost(uint32, repeated, tag = "5")]
    pub cleikfgekij: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dmekpcgncoj {
    #[prost(uint32, repeated, tag = "13")]
    pub ppmpgogolif: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "15")]
    pub cleikfgekij: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "12")]
    pub fcmegdkiahj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cmkadajinma {
    #[prost(uint32, tag = "13")]
    pub maplanefddc: u32,
    #[prost(uint32, tag = "4")]
    pub ofmcnbeikja: u32,
    #[prost(uint32, tag = "5")]
    pub entry_id: u32,
    #[prost(enumeration = "Dcbpclncjec", tag = "6")]
    pub odackhmafpd: i32,
    #[prost(uint32, tag = "9")]
    pub djdbkfnekpf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gecepgpopll {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "14")]
    pub ppmpgogolif: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "1")]
    pub fcmegdkiahj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bmnhgkaoohn {
    #[prost(enumeration = "Dcbpclncjec", tag = "2")]
    pub odackhmafpd: i32,
    #[prost(uint32, tag = "7")]
    pub ofmcnbeikja: u32,
    #[prost(uint32, tag = "14")]
    pub fcmegdkiahj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nejeeemdabp {
    #[prost(uint32, repeated, tag = "1")]
    pub ainmebbjjmm: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "5")]
    pub miofjnbhika: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StrongChallengeAvatar {
    #[prost(enumeration = "AvatarType", tag = "8")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "2")]
    pub avatar_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lplghkcdoem {
    #[prost(uint32, repeated, tag = "11")]
    pub buff_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "4")]
    pub avatar_list: ::prost::alloc::vec::Vec<StrongChallengeAvatar>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fmmhbfjlgli {
    #[prost(uint32, tag = "11")]
    pub bcnbcoijiao: u32,
    #[prost(message, optional, tag = "7")]
    pub hfdmfceigno: ::core::option::Option<Lplghkcdoem>,
    #[prost(uint32, tag = "15")]
    pub oplphfmanjk: u32,
    #[prost(uint32, tag = "4")]
    pub ocdnnofcieb: u32,
    #[prost(uint32, tag = "6")]
    pub stage_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ikgebilalkc {
    #[prost(map = "uint32, message", tag = "6")]
    pub cdmpjddnhfb: ::std::collections::HashMap<u32, Fmmhbfjlgli>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bilelkoefnm {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bpkompjkjga {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(message, optional, tag = "1")]
    pub oeaomcmmdhh: ::core::option::Option<Ikgebilalkc>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jjfciebomag {
    #[prost(uint32, repeated, tag = "14")]
    pub buff_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "4")]
    pub stage_id: u32,
    #[prost(message, repeated, tag = "13")]
    pub avatar_list: ::prost::alloc::vec::Vec<StrongChallengeAvatar>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nmgdmljnjeh {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(uint32, tag = "3")]
    pub stage_id: u32,
    #[prost(message, optional, tag = "1")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bnjpefpcldj {
    #[prost(enumeration = "BattleEndStatus", tag = "13")]
    pub end_status: i32,
    #[prost(uint32, tag = "15")]
    pub obihiejlima: u32,
    #[prost(uint32, tag = "8")]
    pub necjnjkmldj: u32,
    #[prost(uint32, tag = "5")]
    pub stage_id: u32,
    #[prost(uint32, tag = "1")]
    pub oplphfmanjk: u32,
    #[prost(uint32, tag = "10")]
    pub jfjcjmpbhgk: u32,
    #[prost(uint32, tag = "14")]
    pub total_damage: u32,
    #[prost(uint32, tag = "4")]
    pub imalecdkkbp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aakhakgmpbm {
    #[prost(uint32, tag = "15")]
    pub ibipogpfneg: u32,
    #[prost(uint32, tag = "4")]
    pub stamina: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oefgplblgme {
    #[prost(string, tag = "13")]
    pub mjeebfegeai: ::prost::alloc::string::String,
    #[prost(message, repeated, tag = "7")]
    pub fbkdjpbkelk: ::prost::alloc::vec::Vec<Penbelfiign>,
    #[prost(bool, tag = "11")]
    pub clolpffebcn: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Abcekhjbnmp {
    #[prost(message, repeated, tag = "5")]
    pub avatar_list: ::prost::alloc::vec::Vec<Avatar>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kenaodngpog {
    #[prost(uint32, repeated, tag = "4")]
    pub befekelloog: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "11")]
    pub kefnahjakah: ::prost::alloc::vec::Vec<Mission>,
    #[prost(uint32, repeated, tag = "1")]
    pub eklknalhdhc: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "13")]
    pub lfldefiilka: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "6")]
    pub ihdbieokfmp: ::prost::alloc::vec::Vec<Pkaoeeeaakk>,
    #[prost(uint32, repeated, tag = "14")]
    pub onpldkgaofb: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "8")]
    pub iobflgeajop: ::prost::alloc::vec::Vec<Jbelmplppka>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ffadcphikob {
    #[prost(uint32, repeated, tag = "6")]
    pub ckikendooei: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "1")]
    pub mission_event_list: ::prost::alloc::vec::Vec<Mission>,
    #[prost(uint32, repeated, tag = "12")]
    pub lkbadoikmco: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eckkajafean {
    #[prost(message, repeated, tag = "9")]
    pub wait_del_resource_list: ::prost::alloc::vec::Vec<WaitDelResource>,
    #[prost(message, optional, tag = "3")]
    pub fihplpphfme: ::core::option::Option<Abcekhjbnmp>,
    #[prost(message, repeated, tag = "15")]
    pub ghmpdjfdmbl: ::prost::alloc::vec::Vec<Ojemlandahi>,
    #[prost(message, repeated, tag = "11")]
    pub basic_type_info_list: ::prost::alloc::vec::Vec<HeroBasicTypeInfo>,
    #[prost(message, repeated, tag = "14")]
    pub relic_list: ::prost::alloc::vec::Vec<Relic>,
    #[prost(message, repeated, tag = "7")]
    pub jiljjaiepgc: ::prost::alloc::vec::Vec<Afpohdndlni>,
    #[prost(message, optional, tag = "1")]
    pub dpjkdhnflff: ::core::option::Option<Aakhakgmpbm>,
    #[prost(uint32, tag = "1571")]
    pub fklpphomjej: u32,
    #[prost(uint32, repeated, tag = "13")]
    pub lminpcphbfp: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "1371")]
    pub dmkpcemhcga: ::prost::alloc::vec::Vec<Fhhbjljchea>,
    #[prost(message, repeated, tag = "4")]
    pub equipment_list: ::prost::alloc::vec::Vec<Equipment>,
    #[prost(message, optional, tag = "10")]
    pub ajpfhifadnp: ::core::option::Option<Kenaodngpog>,
    #[prost(message, repeated, tag = "330")]
    pub hodalnhhjhh: ::prost::alloc::vec::Vec<Afpohdndlni>,
    #[prost(uint32, repeated, tag = "870")]
    pub fcmmdcpagjc: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, optional, tag = "1050")]
    pub inbdjhcmkmg: ::core::option::Option<Oefgplblgme>,
    #[prost(message, optional, tag = "8")]
    pub hbheefpmcci: ::core::option::Option<Ffadcphikob>,
    #[prost(uint32, repeated, tag = "2")]
    pub oglioehgbal: ::prost::alloc::vec::Vec<u32>,
    #[prost(message, repeated, tag = "599")]
    pub bandfdpocij: ::prost::alloc::vec::Vec<Ejfkpkmjajd>,
    #[prost(message, optional, tag = "1284")]
    pub cngnejklkif: ::core::option::Option<ItemList>,
    #[prost(message, repeated, tag = "1386")]
    pub hhmldpainnp: ::prost::alloc::vec::Vec<Jinhdpbcpgb>,
    #[prost(message, optional, tag = "6")]
    pub basic_info: ::core::option::Option<PlayerBasicInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ofepjkfdlaj {
    #[prost(uint32, tag = "5")]
    pub egeneneoadj: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ifemohljpaj {
    #[prost(uint32, tag = "8")]
    pub egeneneoadj: u32,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "7")]
    pub bekdcnobfeo: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fnehcecippp {
    #[prost(uint32, tag = "6")]
    pub jpmjadlklge: u32,
    #[prost(message, optional, tag = "15")]
    pub heajhjpckog: ::core::option::Option<Vector>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hcnkhckajcl {
    #[prost(message, optional, tag = "3")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "13")]
    pub jpmjadlklge: u32,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nnlodkgmaie {
    #[prost(uint32, repeated, tag = "15")]
    pub aammpfgpknj: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oijcllopbih {
    #[prost(bool, tag = "14")]
    pub apcaodelfcp: bool,
    #[prost(uint32, tag = "6")]
    pub ihbalhicnej: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Abojckcendm {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "12")]
    pub apiaadfldbe: ::prost::alloc::vec::Vec<Oijcllopbih>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Apahjamoadd {
    #[prost(uint32, tag = "2")]
    pub ihbalhicnej: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mackbodenaa {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(uint32, tag = "4")]
    pub ihbalhicnej: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ffbmaojoldl {
    #[prost(uint32, tag = "11")]
    pub ohjdhelnomf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ifohcdkobia {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(uint32, tag = "14")]
    pub ohjdhelnomf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hndfedalldc {
    #[prost(uint32, tag = "6")]
    pub jmnkdpdjilg: u32,
    #[prost(bool, tag = "12")]
    pub apcaodelfcp: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Emcckdfnfea {
    #[prost(uint32, repeated, tag = "13")]
    pub jomdjjhikbb: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bemeopenkpd {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "15")]
    pub apiaadfldbe: ::prost::alloc::vec::Vec<Hndfedalldc>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Edghdkbegnk {
    #[prost(uint32, tag = "10")]
    pub jmnkdpdjilg: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Egbbdllocpl {
    #[prost(uint32, tag = "2")]
    pub jmnkdpdjilg: u32,
    #[prost(message, optional, tag = "7")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Clfkcdeeiio {
    #[prost(uint32, tag = "6")]
    pub oplphfmanjk: u32,
    #[prost(uint32, tag = "13")]
    pub ifklaabhinm: u32,
    #[prost(uint32, tag = "4")]
    pub aafnogffiba: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mokkgndnlfa {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jaggafacghc {
    #[prost(message, repeated, tag = "6")]
    pub lcoodibohop: ::prost::alloc::vec::Vec<Clfkcdeeiio>,
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nglpjeiplbh {
    #[prost(message, repeated, tag = "13")]
    pub lcoodibohop: ::prost::alloc::vec::Vec<Clfkcdeeiio>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ddbkblndaii {
    #[prost(uint32, tag = "8")]
    pub oppigghccho: u32,
    #[prost(message, optional, tag = "12")]
    pub pclbpmhicgl: ::core::option::Option<Clfkcdeeiio>,
    #[prost(uint32, tag = "15")]
    pub caaphphgjgg: u32,
    #[prost(uint32, tag = "10")]
    pub jhfikkkokab: u32,
    #[prost(uint32, tag = "3")]
    pub nepekoenfcm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pdejdefpgdn {
    #[prost(enumeration = "AvatarType", tag = "5")]
    pub avatar_type: i32,
    #[prost(uint32, tag = "14")]
    pub ckondfhadld: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eeogedcngpc {
    #[prost(uint32, repeated, tag = "5")]
    pub buff_list: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "9")]
    pub ifklaabhinm: u32,
    #[prost(message, repeated, tag = "13")]
    pub avatar_list: ::prost::alloc::vec::Vec<Pdejdefpgdn>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mmkdjlmdmim {
    #[prost(uint32, tag = "6")]
    pub ifklaabhinm: u32,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, optional, tag = "4")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mgoffnkfoie {
    #[prost(string, tag = "4")]
    pub okjffcbnfao: ::prost::alloc::string::String,
    #[prost(uint32, tag = "10")]
    pub dbiamabondk: u32,
    #[prost(string, tag = "2")]
    pub oacjpfahkfk: ::prost::alloc::string::String,
    #[prost(uint32, tag = "15")]
    pub omifpkkdlnk: u32,
    #[prost(uint32, tag = "7")]
    pub oflndmfejbp: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aekgneocaam {
    #[prost(uint32, tag = "6")]
    pub omifpkkdlnk: u32,
    #[prost(uint32, tag = "15")]
    pub oflndmfejbp: u32,
    #[prost(string, tag = "2")]
    pub okjffcbnfao: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jfgfkloknop {
    #[prost(uint32, tag = "14")]
    pub omifpkkdlnk: u32,
    #[prost(string, tag = "5")]
    pub okjffcbnfao: ::prost::alloc::string::String,
    #[prost(uint32, tag = "15")]
    pub oflndmfejbp: u32,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gdhccnndgoo {
    #[prost(uint32, repeated, tag = "15")]
    pub fklapcbgihi: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mdfmolfodeh {
    #[prost(message, repeated, tag = "13")]
    pub ejinafnebge: ::prost::alloc::vec::Vec<Mgoffnkfoie>,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lolcoeikgie {
    #[prost(message, repeated, tag = "3")]
    pub ejinafnebge: ::prost::alloc::vec::Vec<Mgoffnkfoie>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Haldljodeln {
    #[prost(message, repeated, tag = "2")]
    pub ejinafnebge: ::prost::alloc::vec::Vec<Mgoffnkfoie>,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kbccnkcbcpa {
    #[prost(uint32, tag = "13")]
    pub adndljgbnga: u32,
    #[prost(bool, tag = "15")]
    pub apcaodelfcp: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Njejhblbklk {
    #[prost(uint32, tag = "8")]
    pub adndljgbnga: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Algmmncpbfc {
    #[prost(uint32, tag = "1")]
    pub adndljgbnga: u32,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(message, optional, tag = "13")]
    pub reward: ::core::option::Option<ItemList>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bciendaonnn {
    #[prost(uint32, repeated, tag = "13")]
    pub khjfgfhhchj: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jgbaeonipdl {
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "6")]
    pub kcjhmlcldag: ::prost::alloc::vec::Vec<Kbccnkcbcpa>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Apghghlchfk {
    #[prost(uint64, tag = "15")]
    pub jkkeinmidcc: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ijpmkjpmlal {
    #[prost(uint32, tag = "1")]
    pub adndljgbnga: u32,
    #[prost(message, optional, tag = "7")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(enumeration = "Mindihbkmie", tag = "11")]
    pub ipnhjoomhdm: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nonijpgmnpg {
    #[prost(enumeration = "Edognimhmai", tag = "7")]
    pub status: i32,
    #[prost(uint32, tag = "1")]
    pub adndljgbnga: u32,
    #[prost(uint32, repeated, tag = "14")]
    pub kimgcnfaanm: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "10")]
    pub ppgjnembpig: u32,
    #[prost(bool, tag = "9")]
    pub ncagkiglmno: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Llbfpblbpmd {
    #[prost(enumeration = "Pnbikakpngm", tag = "13")]
    pub ipnhjoomhdm: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dfpokpboocb {
    #[prost(uint32, repeated, tag = "9")]
    pub kcjigcdkedo: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "13")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "4")]
    pub eoaemcndjoi: ::prost::alloc::vec::Vec<Nonijpgmnpg>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Doikanegkdo {
    #[prost(uint32, tag = "9")]
    pub adndljgbnga: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Edpakkoikhh {
    #[prost(uint32, tag = "1")]
    pub adndljgbnga: u32,
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(uint32, repeated, tag = "5")]
    pub kimgcnfaanm: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Agbjcfnmemo {
    #[prost(uint32, repeated, tag = "11")]
    pub kcjigcdkedo: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bmpafpalddp {
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gbofekdfncl {
    #[prost(uint32, tag = "14")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "12")]
    pub lblemehjiek: u32,
    #[prost(int32, tag = "9")]
    pub ohchcpejldh: i32,
    #[prost(uint32, tag = "5")]
    pub pddanmnadaf: u32,
    #[prost(int32, tag = "8")]
    pub pnaebbacmlm: i32,
    #[prost(uint64, tag = "13")]
    pub unique_id: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bbjejalfhen {
    #[prost(enumeration = "Nhnehbekhhj", tag = "3")]
    pub gfehjonbcmn: i32,
    #[prost(enumeration = "Pefolbeomfh", tag = "4")]
    pub hajfkgdcglb: i32,
    #[prost(uint32, tag = "1")]
    pub egigfgpjddg: u32,
    #[prost(uint32, tag = "8")]
    pub idgckihophm: u32,
    #[prost(message, repeated, tag = "11")]
    pub oockdmpidlg: ::prost::alloc::vec::Vec<Gbofekdfncl>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Phbnokkhgkd {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ipogaccpagm {
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(uint32, tag = "12")]
    pub impheidipgc: u32,
    #[prost(map = "uint32, message", tag = "6")]
    pub biaghopnodp: ::std::collections::HashMap<u32, Bbjejalfhen>,
    #[prost(map = "uint32, uint32", tag = "7")]
    pub moippddaohm: ::std::collections::HashMap<u32, u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hhljeijccio {
    #[prost(uint32, tag = "2")]
    pub idgckihophm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gaphfbopepp {
    #[prost(uint32, tag = "12")]
    pub idgckihophm: u32,
    #[prost(uint32, tag = "6")]
    pub egigfgpjddg: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gfbildoldce {
    #[prost(message, optional, tag = "1")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(message, optional, tag = "12")]
    pub cdibpkmhdco: ::core::option::Option<Bbjejalfhen>,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aflbdbnjghe {
    #[prost(int32, tag = "11")]
    pub pnaebbacmlm: i32,
    #[prost(uint32, tag = "13")]
    pub lblemehjiek: u32,
    #[prost(uint32, tag = "5")]
    pub idgckihophm: u32,
    #[prost(uint32, tag = "9")]
    pub gifbaoolifn: u32,
    #[prost(int32, tag = "12")]
    pub ohchcpejldh: i32,
    #[prost(uint32, tag = "1")]
    pub pddanmnadaf: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mfenfcllnnh {
    #[prost(message, optional, tag = "6")]
    pub cdibpkmhdco: ::core::option::Option<Bbjejalfhen>,
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kcgfjfmdlmf {
    #[prost(uint64, tag = "4")]
    pub unique_id: u64,
    #[prost(uint32, tag = "11")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "5")]
    pub idgckihophm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fdkegmhffhm {
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(message, optional, tag = "13")]
    pub cdibpkmhdco: ::core::option::Option<Bbjejalfhen>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Afahpbeokko {
    #[prost(uint32, tag = "11")]
    pub idgckihophm: u32,
    #[prost(uint32, tag = "3")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "2")]
    pub lblemehjiek: u32,
    #[prost(int32, tag = "8")]
    pub ohchcpejldh: i32,
    #[prost(uint64, tag = "4")]
    pub unique_id: u64,
    #[prost(uint32, tag = "15")]
    pub pddanmnadaf: u32,
    #[prost(int32, tag = "9")]
    pub pnaebbacmlm: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ibkfiljhdme {
    #[prost(message, optional, tag = "15")]
    pub cdibpkmhdco: ::core::option::Option<Bbjejalfhen>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Faoapaokgpc {
    #[prost(uint32, tag = "14")]
    pub djhoddohmnb: u32,
    #[prost(uint32, tag = "13")]
    pub num: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fhhbjljchea {
    #[prost(uint32, tag = "3")]
    pub num: u32,
    #[prost(uint32, tag = "11")]
    pub djhoddohmnb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ehfclbgacef {
    #[prost(uint32, tag = "12")]
    pub value: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kmngmpmibjj {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Oiilieaagmb {
    #[prost(enumeration = "Pefolbeomfh", tag = "12")]
    pub diifekmjiab: i32,
    #[prost(uint32, tag = "7")]
    pub idgckihophm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cmidhendelk {
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kagdkbfofnh {
    #[prost(uint32, tag = "15")]
    pub idgckihophm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fjlhpgohlfc {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, optional, tag = "9")]
    pub cdibpkmhdco: ::core::option::Option<Bbjejalfhen>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kjddmagdfih {
    #[prost(uint32, tag = "15")]
    pub lblemehjiek: u32,
    #[prost(uint32, tag = "2")]
    pub pddanmnadaf: u32,
    #[prost(int32, tag = "6")]
    pub ohchcpejldh: i32,
    #[prost(uint32, tag = "14")]
    pub gifbaoolifn: u32,
    #[prost(int32, tag = "8")]
    pub pnaebbacmlm: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kamifhceadp {
    #[prost(message, repeated, tag = "15")]
    pub enhcackndoe: ::prost::alloc::vec::Vec<Kjddmagdfih>,
    #[prost(uint32, tag = "5")]
    pub idgckihophm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jlpminpbmng {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(message, optional, tag = "7")]
    pub cdibpkmhdco: ::core::option::Option<Bbjejalfhen>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TreasureDungeonRecordData {
    #[prost(uint32, tag = "4")]
    pub source_grid_id: u32,
    #[prost(uint32, tag = "10")]
    pub param1: u32,
    #[prost(enumeration = "Phpcidgokmb", tag = "12")]
    pub r#type: i32,
    #[prost(uint32, tag = "3")]
    pub target_grid_id: u32,
    #[prost(uint32, tag = "5")]
    pub param2: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jnjelioflfa {
    #[prost(message, optional, tag = "15")]
    pub fecnfebkcdi: ::core::option::Option<Ihbhkelbjfp>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Faldkjlblpa {
    #[prost(uint32, tag = "5")]
    pub lodnjpiobfk: u32,
    #[prost(uint32, tag = "14")]
    pub gmckcmofmmd: u32,
    #[prost(bool, tag = "13")]
    pub bccnneknbdm: bool,
    #[prost(map = "uint32, uint32", tag = "11")]
    pub bdcjibfjcno: ::std::collections::HashMap<u32, u32>,
    #[prost(uint32, tag = "15")]
    pub jmbbhkaabhl: u32,
    #[prost(uint32, tag = "2")]
    pub bpagnpadcde: u32,
    #[prost(map = "uint32, uint32", tag = "12")]
    pub emoijeogicg: ::std::collections::HashMap<u32, u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ihbhkelbjfp {
    #[prost(message, repeated, tag = "712")]
    pub llhhgfdejkm: ::prost::alloc::vec::Vec<Pjdnlibbbac>,
    #[prost(uint32, tag = "13")]
    pub jmbbhkaabhl: u32,
    #[prost(uint32, tag = "15")]
    pub cnfkdggbnpo: u32,
    #[prost(uint32, tag = "2")]
    pub bpagnpadcde: u32,
    #[prost(uint32, tag = "3")]
    pub ljffkjnmpad: u32,
    #[prost(message, repeated, tag = "710")]
    pub item_list: ::prost::alloc::vec::Vec<Egndeiohpdd>,
    #[prost(bool, tag = "785")]
    pub oggfcahhmid: bool,
    #[prost(uint32, tag = "7")]
    pub iplekijdmlh: u32,
    #[prost(message, repeated, tag = "1357")]
    pub buff_list: ::prost::alloc::vec::Vec<Lkhjdanpapa>,
    #[prost(uint32, tag = "1830")]
    pub ocefjnegpdh: u32,
    #[prost(message, repeated, tag = "18")]
    pub fhnoicgjmdf: ::prost::alloc::vec::Vec<Fhfgepcmfca>,
    #[prost(bool, tag = "1849")]
    pub lllliiedhin: bool,
    #[prost(uint32, tag = "9")]
    pub map_id: u32,
    #[prost(message, repeated, tag = "11")]
    pub biljkfmfndn: ::prost::alloc::vec::Vec<TreasureDungeonRecordData>,
    #[prost(uint32, tag = "4")]
    pub aokpaojinnc: u32,
    #[prost(bool, tag = "1791")]
    pub dljigkochgb: bool,
    #[prost(message, repeated, tag = "1443")]
    pub avatar_list: ::prost::alloc::vec::Vec<Fhfgepcmfca>,
    #[prost(message, repeated, tag = "5")]
    pub klgmehpnapm: ::prost::alloc::vec::Vec<Jgibaplgfee>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Egndeiohpdd {
    #[prost(uint32, tag = "13")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "2")]
    pub bmnpahoebpb: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fhfgepcmfca {
    #[prost(uint32, tag = "10")]
    pub ljccfalkihe: u32,
    #[prost(uint32, tag = "6")]
    pub ckondfhadld: u32,
    #[prost(uint32, tag = "9")]
    pub hp: u32,
    #[prost(uint32, tag = "15")]
    pub avatar_type: u32,
    #[prost(message, optional, tag = "13")]
    pub sp: ::core::option::Option<AmountInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pjdnlibbbac {
    #[prost(uint32, tag = "9")]
    pub ckondfhadld: u32,
    #[prost(uint32, tag = "2")]
    pub avatar_type: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lkhjdanpapa {
    #[prost(uint32, tag = "6")]
    pub gniajjdffdf: u32,
    #[prost(uint32, tag = "4")]
    pub jfghjfckgcd: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jgibaplgfee {
    #[prost(bool, tag = "8")]
    pub caildcdokfh: bool,
    #[prost(uint32, tag = "12")]
    pub nomlemcmand: u32,
    #[prost(uint32, tag = "11")]
    pub egionhjhjof: u32,
    #[prost(uint32, tag = "6")]
    pub fcnkamojgdk: u32,
    #[prost(message, repeated, tag = "1123")]
    pub buff_list: ::prost::alloc::vec::Vec<Hcifeegknpi>,
    #[prost(bool, tag = "9")]
    pub amglokokphj: bool,
    #[prost(bool, tag = "1")]
    pub hhhkgiieldg: bool,
    #[prost(bool, tag = "14")]
    pub hcllnpjhpil: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hcifeegknpi {
    #[prost(uint32, tag = "1")]
    pub jfghjfckgcd: u32,
    #[prost(uint32, tag = "2")]
    pub fcnkamojgdk: u32,
    #[prost(uint32, tag = "8")]
    pub cmkedegfhob: u32,
    #[prost(uint32, tag = "10")]
    pub plgklbibcfj: u32,
    #[prost(uint32, tag = "13")]
    pub hcnocfjfeph: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ecjmegpafhb {
    #[prost(uint32, tag = "8")]
    pub jmbbhkaabhl: u32,
    #[prost(bool, tag = "1")]
    pub lhaogkknncc: bool,
    #[prost(uint32, tag = "11")]
    pub bpagnpadcde: u32,
    #[prost(uint32, tag = "3")]
    pub iplekijdmlh: u32,
    #[prost(bool, tag = "6")]
    pub ckogcceipni: bool,
    #[prost(uint32, tag = "2")]
    pub pcobhigdhek: u32,
    #[prost(uint32, tag = "4")]
    pub aokpaojinnc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kbjoeocccpk {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gbgfckepbom {
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "2")]
    pub pbpbkdnlcao: ::prost::alloc::vec::Vec<Ecjmegpafhb>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Okjknpohkfg {
    #[prost(message, repeated, tag = "1")]
    pub avatar_list: ::prost::alloc::vec::Vec<Jjmndbdnhif>,
    #[prost(uint32, tag = "10")]
    pub bpagnpadcde: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Faokfnbiinb {
    #[prost(uint32, tag = "7")]
    pub retcode: u32,
    #[prost(message, optional, tag = "13")]
    pub fecnfebkcdi: ::core::option::Option<Ihbhkelbjfp>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cgfppobckcc {
    #[prost(uint32, tag = "10")]
    pub bpagnpadcde: u32,
    #[prost(uint32, tag = "9")]
    pub fcnkamojgdk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Enmpcnoegne {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, optional, tag = "1")]
    pub fecnfebkcdi: ::core::option::Option<Ihbhkelbjfp>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hdomeimdfmk {
    #[prost(uint32, tag = "11")]
    pub jnfbeoilkbo: u32,
    #[prost(uint32, tag = "12")]
    pub bpagnpadcde: u32,
    #[prost(uint32, tag = "9")]
    pub fcnkamojgdk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hljaljfmgbn {
    #[prost(message, optional, tag = "10")]
    pub fecnfebkcdi: ::core::option::Option<Ihbhkelbjfp>,
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mefghnfcgaa {
    #[prost(uint32, tag = "1")]
    pub gifbaoolifn: u32,
    #[prost(uint32, tag = "7")]
    pub fcnkamojgdk: u32,
    #[prost(uint32, tag = "2")]
    pub bpagnpadcde: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ceooloiinmd {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(message, optional, tag = "15")]
    pub fecnfebkcdi: ::core::option::Option<Ihbhkelbjfp>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jjmndbdnhif {
    #[prost(uint32, tag = "2")]
    pub ckondfhadld: u32,
    #[prost(enumeration = "AvatarType", tag = "6")]
    pub avatar_type: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lpkifhdghgl {
    #[prost(uint32, tag = "11")]
    pub fcnkamojgdk: u32,
    #[prost(uint32, tag = "13")]
    pub bpagnpadcde: u32,
    #[prost(message, repeated, tag = "4")]
    pub avatar_list: ::prost::alloc::vec::Vec<Jjmndbdnhif>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Haaiebnocjd {
    #[prost(message, optional, tag = "14")]
    pub battle_info: ::core::option::Option<SceneBattleInfo>,
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gckciklcmgh {
    #[prost(bool, tag = "10")]
    pub menmpielgpl: bool,
    #[prost(uint32, tag = "9")]
    pub bpagnpadcde: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gmpgngdomif {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Tutorial {
    #[prost(uint32, tag = "2")]
    pub id: u32,
    #[prost(enumeration = "TutorialStatus", tag = "4")]
    pub status: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TutorialGuide {
    #[prost(uint32, tag = "6")]
    pub id: u32,
    #[prost(enumeration = "TutorialStatus", tag = "8")]
    pub status: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetTutorialCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetTutorialScRsp {
    #[prost(message, repeated, tag = "14")]
    pub tutorial_list: ::prost::alloc::vec::Vec<Tutorial>,
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetTutorialGuideCsReq {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetTutorialGuideScRsp {
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "6")]
    pub tutorial_guide_list: ::prost::alloc::vec::Vec<TutorialGuide>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UnlockTutorialCsReq {
    #[prost(uint32, tag = "1")]
    pub tutorial_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UnlockTutorialScRsp {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(message, optional, tag = "4")]
    pub tutorial: ::core::option::Option<Tutorial>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UnlockTutorialGuideCsReq {
    #[prost(uint32, tag = "5")]
    pub group_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UnlockTutorialGuideScRsp {
    #[prost(uint32, tag = "1")]
    pub retcode: u32,
    #[prost(message, optional, tag = "4")]
    pub tutorial_guide: ::core::option::Option<TutorialGuide>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hlnapnabgpe {
    #[prost(uint32, tag = "10")]
    pub tutorial_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FinishTutorialScRsp {
    #[prost(uint32, tag = "5")]
    pub retcode: u32,
    #[prost(message, optional, tag = "1")]
    pub tutorial: ::core::option::Option<Tutorial>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nmjggdmlbaa {
    #[prost(uint32, tag = "3")]
    pub group_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FinishTutorialGuideScRsp {
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
    #[prost(message, optional, tag = "3")]
    pub reward: ::core::option::Option<ItemList>,
    #[prost(message, optional, tag = "7")]
    pub tutorial_guide: ::core::option::Option<TutorialGuide>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jdcgebamnln {
    #[prost(uint32, tag = "3")]
    pub id: u32,
    #[prost(bool, tag = "12")]
    pub is_new: bool,
    #[prost(uint32, tag = "7")]
    pub dppfmjbkaii: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ikomfelhkko {
    #[prost(uint32, repeated, tag = "4")]
    pub ejehaagpein: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, tag = "14")]
    pub lklhnfakgbl: u32,
    #[prost(bool, tag = "9")]
    pub is_new: bool,
    #[prost(uint32, tag = "2")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jimojifkmbe {
    #[prost(message, optional, tag = "5")]
    pub jdjegmhbhmn: ::core::option::Option<Ikomfelhkko>,
    #[prost(message, repeated, tag = "10")]
    pub cgjjpiencmp: ::prost::alloc::vec::Vec<Jdcgebamnln>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cckkdihgpop {
    #[prost(uint32, tag = "6")]
    pub ljpgdphnjpm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mdaaeacnkec {
    #[prost(uint32, tag = "14")]
    pub mccfblapnlc: u32,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
    #[prost(message, optional, tag = "6")]
    pub kcopphmaepk: ::core::option::Option<Jimojifkmbe>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nbffcfpgafk {
    #[prost(uint32, tag = "7")]
    pub kgngekgpakk: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lkhjfpbllcl {
    #[prost(uint32, tag = "15")]
    pub retcode: u32,
    #[prost(uint32, tag = "7")]
    pub mccfblapnlc: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kkdmacfgfln {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cdnbnghnfkj {
    #[prost(uint32, tag = "14")]
    pub mccfblapnlc: u32,
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(message, repeated, tag = "4")]
    pub bgjldhgbpjb: ::prost::alloc::vec::Vec<Ikomfelhkko>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Bnfpjcahfda {
    #[prost(uint32, tag = "5")]
    pub kgngekgpakk: u32,
    #[prost(uint32, tag = "9")]
    pub ljpgdphnjpm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ddklecpdgim {
    #[prost(uint32, tag = "1")]
    pub ljpgdphnjpm: u32,
    #[prost(uint32, tag = "8")]
    pub aemihadldnl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Aobocfgegcn {
    #[prost(uint32, tag = "3")]
    pub ljpgdphnjpm: u32,
    #[prost(uint32, tag = "14")]
    pub retcode: u32,
    #[prost(uint32, tag = "15")]
    pub aemihadldnl: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fddblfeeafo {
    #[prost(uint32, tag = "12")]
    pub chggjghbnbm: u32,
    #[prost(message, optional, tag = "6")]
    pub motion: ::core::option::Option<MotionInfo>,
    #[prost(bool, tag = "2")]
    pub lfehnfopjcl: bool,
    #[prost(message, repeated, tag = "4")]
    pub mcjjkbhlajn: ::prost::alloc::vec::Vec<Vector>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ielpkdflndm {
    #[prost(message, optional, tag = "4")]
    pub pfpeddefnjl: ::core::option::Option<Fddblfeeafo>,
    #[prost(uint32, tag = "14")]
    pub id: u32,
    #[prost(bool, tag = "10")]
    pub lfehnfopjcl: bool,
    #[prost(string, tag = "2")]
    pub egkempkhehe: ::prost::alloc::string::String,
    #[prost(message, repeated, tag = "7")]
    pub mcjjkbhlajn: ::prost::alloc::vec::Vec<Vector>,
    #[prost(uint32, tag = "15")]
    pub chggjghbnbm: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Embodfebole {
    #[prost(message, optional, tag = "14")]
    pub motion: ::core::option::Option<MotionInfo>,
    #[prost(message, optional, tag = "4")]
    pub ifhpffolnae: ::core::option::Option<Kekgblohgpj>,
    #[prost(bool, tag = "3")]
    pub bepbiabjink: bool,
    #[prost(uint32, tag = "11")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ekojamgnhdo {
    #[prost(uint32, tag = "6")]
    pub retcode: u32,
    #[prost(message, optional, tag = "5")]
    pub jlpmjglnihm: ::core::option::Option<Ielpkdflndm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Egjgdoindfi {
    #[prost(uint32, tag = "14")]
    pub id: u32,
    #[prost(message, optional, tag = "10")]
    pub motion: ::core::option::Option<MotionInfo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Hinldeaajhm {
    #[prost(message, optional, tag = "8")]
    pub jlpmjglnihm: ::core::option::Option<Ielpkdflndm>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Kblhgkiappc {
    #[prost(uint32, tag = "1")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Cmefjghinmn {
    #[prost(uint32, tag = "11")]
    pub retcode: u32,
    #[prost(message, optional, tag = "1")]
    pub jlpmjglnihm: ::core::option::Option<Ielpkdflndm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ddeckmibmjg {
    #[prost(uint32, tag = "15")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Eogpcdalafl {
    #[prost(uint32, tag = "2")]
    pub retcode: u32,
    #[prost(message, optional, tag = "10")]
    pub jlpmjglnihm: ::core::option::Option<Ielpkdflndm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lmcmfnohaii {
    #[prost(uint32, tag = "15")]
    pub id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ijbfjkgnjoj {
    #[prost(uint32, tag = "10")]
    pub retcode: u32,
    #[prost(message, optional, tag = "11")]
    pub jlpmjglnihm: ::core::option::Option<Ielpkdflndm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pjpeagipddd {
    #[prost(message, optional, tag = "2")]
    pub jlpmjglnihm: ::core::option::Option<Ielpkdflndm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jbjfnnndkoc {
    #[prost(message, optional, tag = "3")]
    pub kkgajffenbl: ::core::option::Option<Vector>,
    #[prost(uint32, repeated, tag = "8")]
    pub jpieajikioh: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nkjbegggjpd {
    #[prost(message, optional, tag = "1")]
    pub jlpmjglnihm: ::core::option::Option<Ielpkdflndm>,
    #[prost(uint32, tag = "3")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Affambiopbh {
    #[prost(message, optional, tag = "9")]
    pub kkgajffenbl: ::core::option::Option<Vector>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Loldclbcgpd {
    #[prost(uint32, tag = "8")]
    pub retcode: u32,
    #[prost(message, optional, tag = "9")]
    pub jlpmjglnihm: ::core::option::Option<Ielpkdflndm>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nihdpcfoidb {
    #[prost(uint32, tag = "6")]
    pub ifjocipnpgd: u32,
    #[prost(uint32, tag = "15")]
    pub group_id: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dmpeoekgieh {
    #[prost(uint32, tag = "4")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Jfgidjkpino {
    #[prost(uint32, repeated, tag = "2")]
    pub jpieajikioh: ::prost::alloc::vec::Vec<u32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mmnkgmcafeh {
    #[prost(uint32, tag = "9")]
    pub retcode: u32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Iimdinfnaco {
    #[prost(uint32, tag = "1")]
    pub efkhdbdglmp: u32,
    #[prost(uint32, tag = "2")]
    pub dcdpohmbjma: u32,
    #[prost(uint32, tag = "3")]
    pub igimocfbiaf: u32,
    #[prost(uint32, tag = "4")]
    pub cjkipcgmabi: u32,
    #[prost(uint32, tag = "5")]
    pub aghijgmjnen: u32,
    #[prost(uint32, tag = "6")]
    pub jnmkogncbmh: u32,
    #[prost(uint32, tag = "7")]
    pub cfjcecopmbc: u32,
    #[prost(uint32, tag = "8")]
    pub gclelnkkcfb: u32,
    #[prost(uint32, tag = "9")]
    pub jcbgelmlced: u32,
    #[prost(uint32, tag = "10")]
    pub jejjfkcjmdi: u32,
    #[prost(uint32, tag = "11")]
    pub id: u32,
    #[prost(uint32, tag = "12")]
    pub ndjimhmpglc: u32,
    #[prost(uint32, tag = "13")]
    pub ncmfakdibdk: u32,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum KickType {
    KickSqueezed = 0,
    KickBlack = 1,
    KickChangePwd = 2,
    KickLoginWhiteTimeout = 3,
    KickAceAntiCheater = 4,
    KickByGm = 5,
}
impl KickType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            KickType::KickSqueezed => "KICK_SQUEEZED",
            KickType::KickBlack => "KICK_BLACK",
            KickType::KickChangePwd => "KICK_CHANGE_PWD",
            KickType::KickLoginWhiteTimeout => "KICK_LOGIN_WHITE_TIMEOUT",
            KickType::KickAceAntiCheater => "KICK_ACE_ANTI_CHEATER",
            KickType::KickByGm => "KICK_BY_GM",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "KICK_SQUEEZED" => Some(Self::KickSqueezed),
            "KICK_BLACK" => Some(Self::KickBlack),
            "KICK_CHANGE_PWD" => Some(Self::KickChangePwd),
            "KICK_LOGIN_WHITE_TIMEOUT" => Some(Self::KickLoginWhiteTimeout),
            "KICK_ACE_ANTI_CHEATER" => Some(Self::KickAceAntiCheater),
            "KICK_BY_GM" => Some(Self::KickByGm),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum AvatarSlotType {
    AvatarSlot1 = 0,
    AvatarSlot2 = 1,
    AvatarSlot3 = 2,
}
impl AvatarSlotType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            AvatarSlotType::AvatarSlot1 => "AVATAR_SLOT_1",
            AvatarSlotType::AvatarSlot2 => "AVATAR_SLOT_2",
            AvatarSlotType::AvatarSlot3 => "AVATAR_SLOT_3",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "AVATAR_SLOT_1" => Some(Self::AvatarSlot1),
            "AVATAR_SLOT_2" => Some(Self::AvatarSlot2),
            "AVATAR_SLOT_3" => Some(Self::AvatarSlot3),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ItemType {
    None = 0,
    ItemAvatarCard = 1,
    ItemEquipment = 2,
    ItemMaterial = 3,
    ItemAvatarExp = 4,
    ItemRelic = 5,
}
impl ItemType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            ItemType::None => "ITEM_TYPE_NONE",
            ItemType::ItemAvatarCard => "ITEM_AVATAR_CARD",
            ItemType::ItemEquipment => "ITEM_EQUIPMENT",
            ItemType::ItemMaterial => "ITEM_MATERIAL",
            ItemType::ItemAvatarExp => "ITEM_AVATAR_EXP",
            ItemType::ItemRelic => "ITEM_RELIC",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ITEM_TYPE_NONE" => Some(Self::None),
            "ITEM_AVATAR_CARD" => Some(Self::ItemAvatarCard),
            "ITEM_EQUIPMENT" => Some(Self::ItemEquipment),
            "ITEM_MATERIAL" => Some(Self::ItemMaterial),
            "ITEM_AVATAR_EXP" => Some(Self::ItemAvatarExp),
            "ITEM_RELIC" => Some(Self::ItemRelic),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum VirtualItemType {
    VirtualItemNone = 0,
    VirtualItemHcoin = 1,
    VirtualItemScoin = 2,
    VirtualItemMcoin = 3,
    VirtualItemStamina = 11,
    VirtualItemReserveStamina = 12,
    VirtualItemAvatarExp = 21,
    VirtualItemExp = 22,
    VirtualItemDailyActivePoint = 23,
    VirtualItemMpMax = 24,
    VirtualItemPlayerReturnPoint = 25,
    VirtualItemBattleCollegePoint = 26,
    VirtualItemRogueCoin = 31,
    VirtualItemRogueTalentCoin = 32,
    VirtualItemRogueRewardKey = 33,
    VirtualItemAchievementExp = 41,
    VirtualItemBpExp = 51,
    VirtualItemBpRealExp = 52,
    VirtualItemMuseumFunds = 53,
    VirtualItemWarriorExp = 190,
    VirtualItemRogueExp = 191,
    VirtualItemMageExp = 192,
    VirtualItemShamanExp = 193,
    VirtualItemWarlockExp = 194,
    VirtualItemKnightExp = 195,
    VirtualItemPriestExp = 196,
    VirtualItemPunkLordPoint = 100000,
    VirtualItemGameplayCounterMonsterSneakVision = 280001,
    VirtualItemGameplayCounterWolfBroBullet = 280002,
    VirtualItemAlleyFunds = 281001,
    VirtualItemRoguePumanCoupon = 281002,
    VirtualItemMonthCard = 281003,
    VirtualItemBpNormal = 281004,
    VirtualItemBpDeluxe = 281005,
    VirtualItemBpUpgrade = 281012,
    VirtualItemHeliobusFans = 281013,
    VirtualItemSpaceZooHybridItem = 281014,
    VirtualItemSpaceZooExpPoint = 281015,
    VirtualItemRogueNousTalentCoin = 281016,
    VirtualItemEvolveBuildCoin = 281017,
    VirtualItemDrinkMakerTip = 281019,
    VirtualItemMonopolyDice = 281020,
    VirtualItemMonopolyCoin = 281021,
    VirtualItemMonopolyCheatdice = 300101,
    VirtualItemMonopolyReroll = 300102,
    VirtualItemClockparkTalentPoint = 300103,
    VirtualItemClockparkCoin = 300104,
}
impl VirtualItemType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            VirtualItemType::VirtualItemNone => "VIRTUAL_ITEM_NONE",
            VirtualItemType::VirtualItemHcoin => "VIRTUAL_ITEM_HCOIN",
            VirtualItemType::VirtualItemScoin => "VIRTUAL_ITEM_SCOIN",
            VirtualItemType::VirtualItemMcoin => "VIRTUAL_ITEM_MCOIN",
            VirtualItemType::VirtualItemStamina => "VIRTUAL_ITEM_STAMINA",
            VirtualItemType::VirtualItemReserveStamina => "VIRTUAL_ITEM_RESERVE_STAMINA",
            VirtualItemType::VirtualItemAvatarExp => "VIRTUAL_ITEM_AVATAR_EXP",
            VirtualItemType::VirtualItemExp => "VIRTUAL_ITEM_EXP",
            VirtualItemType::VirtualItemDailyActivePoint => {
                "VIRTUAL_ITEM_DAILY_ACTIVE_POINT"
            }
            VirtualItemType::VirtualItemMpMax => "VIRTUAL_ITEM_MP_MAX",
            VirtualItemType::VirtualItemPlayerReturnPoint => {
                "VIRTUAL_ITEM_PLAYER_RETURN_POINT"
            }
            VirtualItemType::VirtualItemBattleCollegePoint => {
                "VIRTUAL_ITEM_BATTLE_COLLEGE_POINT"
            }
            VirtualItemType::VirtualItemRogueCoin => "VIRTUAL_ITEM_ROGUE_COIN",
            VirtualItemType::VirtualItemRogueTalentCoin => {
                "VIRTUAL_ITEM_ROGUE_TALENT_COIN"
            }
            VirtualItemType::VirtualItemRogueRewardKey => "VIRTUAL_ITEM_ROGUE_REWARD_KEY",
            VirtualItemType::VirtualItemAchievementExp => "VIRTUAL_ITEM_ACHIEVEMENT_EXP",
            VirtualItemType::VirtualItemBpExp => "VIRTUAL_ITEM_BP_EXP",
            VirtualItemType::VirtualItemBpRealExp => "VIRTUAL_ITEM_BP_REAL_EXP",
            VirtualItemType::VirtualItemMuseumFunds => "VIRTUAL_ITEM_MUSEUM_FUNDS",
            VirtualItemType::VirtualItemWarriorExp => "VIRTUAL_ITEM_WARRIOR_EXP",
            VirtualItemType::VirtualItemRogueExp => "VIRTUAL_ITEM_ROGUE_EXP",
            VirtualItemType::VirtualItemMageExp => "VIRTUAL_ITEM_MAGE_EXP",
            VirtualItemType::VirtualItemShamanExp => "VIRTUAL_ITEM_SHAMAN_EXP",
            VirtualItemType::VirtualItemWarlockExp => "VIRTUAL_ITEM_WARLOCK_EXP",
            VirtualItemType::VirtualItemKnightExp => "VIRTUAL_ITEM_KNIGHT_EXP",
            VirtualItemType::VirtualItemPriestExp => "VIRTUAL_ITEM_PRIEST_EXP",
            VirtualItemType::VirtualItemPunkLordPoint => "VIRTUAL_ITEM_PUNK_LORD_POINT",
            VirtualItemType::VirtualItemGameplayCounterMonsterSneakVision => {
                "VIRTUAL_ITEM_GAMEPLAY_COUNTER_MONSTER_SNEAK_VISION"
            }
            VirtualItemType::VirtualItemGameplayCounterWolfBroBullet => {
                "VIRTUAL_ITEM_GAMEPLAY_COUNTER_WOLF_BRO_BULLET"
            }
            VirtualItemType::VirtualItemAlleyFunds => "VIRTUAL_ITEM_ALLEY_FUNDS",
            VirtualItemType::VirtualItemRoguePumanCoupon => {
                "VIRTUAL_ITEM_ROGUE_PUMAN_COUPON"
            }
            VirtualItemType::VirtualItemMonthCard => "VIRTUAL_ITEM_MONTH_CARD",
            VirtualItemType::VirtualItemBpNormal => "VIRTUAL_ITEM_BP_NORMAL",
            VirtualItemType::VirtualItemBpDeluxe => "VIRTUAL_ITEM_BP_DELUXE",
            VirtualItemType::VirtualItemBpUpgrade => "VIRTUAL_ITEM_BP_UPGRADE",
            VirtualItemType::VirtualItemHeliobusFans => "VIRTUAL_ITEM_HELIOBUS_FANS",
            VirtualItemType::VirtualItemSpaceZooHybridItem => {
                "VIRTUAL_ITEM_SPACE_ZOO_HYBRID_ITEM"
            }
            VirtualItemType::VirtualItemSpaceZooExpPoint => {
                "VIRTUAL_ITEM_SPACE_ZOO_EXP_POINT"
            }
            VirtualItemType::VirtualItemRogueNousTalentCoin => {
                "VIRTUAL_ITEM_ROGUE_NOUS_TALENT_COIN"
            }
            VirtualItemType::VirtualItemEvolveBuildCoin => {
                "VIRTUAL_ITEM_EVOLVE_BUILD_COIN"
            }
            VirtualItemType::VirtualItemDrinkMakerTip => "VIRTUAL_ITEM_DRINK_MAKER_TIP",
            VirtualItemType::VirtualItemMonopolyDice => "VIRTUAL_ITEM_MONOPOLY_DICE",
            VirtualItemType::VirtualItemMonopolyCoin => "VIRTUAL_ITEM_MONOPOLY_COIN",
            VirtualItemType::VirtualItemMonopolyCheatdice => {
                "VIRTUAL_ITEM_MONOPOLY_CHEATDICE"
            }
            VirtualItemType::VirtualItemMonopolyReroll => "VIRTUAL_ITEM_MONOPOLY_REROLL",
            VirtualItemType::VirtualItemClockparkTalentPoint => {
                "VIRTUAL_ITEM_CLOCKPARK_TALENT_POINT"
            }
            VirtualItemType::VirtualItemClockparkCoin => "VIRTUAL_ITEM_CLOCKPARK_COIN",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "VIRTUAL_ITEM_NONE" => Some(Self::VirtualItemNone),
            "VIRTUAL_ITEM_HCOIN" => Some(Self::VirtualItemHcoin),
            "VIRTUAL_ITEM_SCOIN" => Some(Self::VirtualItemScoin),
            "VIRTUAL_ITEM_MCOIN" => Some(Self::VirtualItemMcoin),
            "VIRTUAL_ITEM_STAMINA" => Some(Self::VirtualItemStamina),
            "VIRTUAL_ITEM_RESERVE_STAMINA" => Some(Self::VirtualItemReserveStamina),
            "VIRTUAL_ITEM_AVATAR_EXP" => Some(Self::VirtualItemAvatarExp),
            "VIRTUAL_ITEM_EXP" => Some(Self::VirtualItemExp),
            "VIRTUAL_ITEM_DAILY_ACTIVE_POINT" => Some(Self::VirtualItemDailyActivePoint),
            "VIRTUAL_ITEM_MP_MAX" => Some(Self::VirtualItemMpMax),
            "VIRTUAL_ITEM_PLAYER_RETURN_POINT" => {
                Some(Self::VirtualItemPlayerReturnPoint)
            }
            "VIRTUAL_ITEM_BATTLE_COLLEGE_POINT" => {
                Some(Self::VirtualItemBattleCollegePoint)
            }
            "VIRTUAL_ITEM_ROGUE_COIN" => Some(Self::VirtualItemRogueCoin),
            "VIRTUAL_ITEM_ROGUE_TALENT_COIN" => Some(Self::VirtualItemRogueTalentCoin),
            "VIRTUAL_ITEM_ROGUE_REWARD_KEY" => Some(Self::VirtualItemRogueRewardKey),
            "VIRTUAL_ITEM_ACHIEVEMENT_EXP" => Some(Self::VirtualItemAchievementExp),
            "VIRTUAL_ITEM_BP_EXP" => Some(Self::VirtualItemBpExp),
            "VIRTUAL_ITEM_BP_REAL_EXP" => Some(Self::VirtualItemBpRealExp),
            "VIRTUAL_ITEM_MUSEUM_FUNDS" => Some(Self::VirtualItemMuseumFunds),
            "VIRTUAL_ITEM_WARRIOR_EXP" => Some(Self::VirtualItemWarriorExp),
            "VIRTUAL_ITEM_ROGUE_EXP" => Some(Self::VirtualItemRogueExp),
            "VIRTUAL_ITEM_MAGE_EXP" => Some(Self::VirtualItemMageExp),
            "VIRTUAL_ITEM_SHAMAN_EXP" => Some(Self::VirtualItemShamanExp),
            "VIRTUAL_ITEM_WARLOCK_EXP" => Some(Self::VirtualItemWarlockExp),
            "VIRTUAL_ITEM_KNIGHT_EXP" => Some(Self::VirtualItemKnightExp),
            "VIRTUAL_ITEM_PRIEST_EXP" => Some(Self::VirtualItemPriestExp),
            "VIRTUAL_ITEM_PUNK_LORD_POINT" => Some(Self::VirtualItemPunkLordPoint),
            "VIRTUAL_ITEM_GAMEPLAY_COUNTER_MONSTER_SNEAK_VISION" => {
                Some(Self::VirtualItemGameplayCounterMonsterSneakVision)
            }
            "VIRTUAL_ITEM_GAMEPLAY_COUNTER_WOLF_BRO_BULLET" => {
                Some(Self::VirtualItemGameplayCounterWolfBroBullet)
            }
            "VIRTUAL_ITEM_ALLEY_FUNDS" => Some(Self::VirtualItemAlleyFunds),
            "VIRTUAL_ITEM_ROGUE_PUMAN_COUPON" => Some(Self::VirtualItemRoguePumanCoupon),
            "VIRTUAL_ITEM_MONTH_CARD" => Some(Self::VirtualItemMonthCard),
            "VIRTUAL_ITEM_BP_NORMAL" => Some(Self::VirtualItemBpNormal),
            "VIRTUAL_ITEM_BP_DELUXE" => Some(Self::VirtualItemBpDeluxe),
            "VIRTUAL_ITEM_BP_UPGRADE" => Some(Self::VirtualItemBpUpgrade),
            "VIRTUAL_ITEM_HELIOBUS_FANS" => Some(Self::VirtualItemHeliobusFans),
            "VIRTUAL_ITEM_SPACE_ZOO_HYBRID_ITEM" => {
                Some(Self::VirtualItemSpaceZooHybridItem)
            }
            "VIRTUAL_ITEM_SPACE_ZOO_EXP_POINT" => Some(Self::VirtualItemSpaceZooExpPoint),
            "VIRTUAL_ITEM_ROGUE_NOUS_TALENT_COIN" => {
                Some(Self::VirtualItemRogueNousTalentCoin)
            }
            "VIRTUAL_ITEM_EVOLVE_BUILD_COIN" => Some(Self::VirtualItemEvolveBuildCoin),
            "VIRTUAL_ITEM_DRINK_MAKER_TIP" => Some(Self::VirtualItemDrinkMakerTip),
            "VIRTUAL_ITEM_MONOPOLY_DICE" => Some(Self::VirtualItemMonopolyDice),
            "VIRTUAL_ITEM_MONOPOLY_COIN" => Some(Self::VirtualItemMonopolyCoin),
            "VIRTUAL_ITEM_MONOPOLY_CHEATDICE" => Some(Self::VirtualItemMonopolyCheatdice),
            "VIRTUAL_ITEM_MONOPOLY_REROLL" => Some(Self::VirtualItemMonopolyReroll),
            "VIRTUAL_ITEM_CLOCKPARK_TALENT_POINT" => {
                Some(Self::VirtualItemClockparkTalentPoint)
            }
            "VIRTUAL_ITEM_CLOCKPARK_COIN" => Some(Self::VirtualItemClockparkCoin),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum GameplayCounterType {
    GameplayCounterNone = 0,
    GameplayCounterMonsterSneakVision = 280001,
}
impl GameplayCounterType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            GameplayCounterType::GameplayCounterNone => "GAMEPLAY_COUNTER_NONE",
            GameplayCounterType::GameplayCounterMonsterSneakVision => {
                "GAMEPLAY_COUNTER_MONSTER_SNEAK_VISION"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "GAMEPLAY_COUNTER_NONE" => Some(Self::GameplayCounterNone),
            "GAMEPLAY_COUNTER_MONSTER_SNEAK_VISION" => {
                Some(Self::GameplayCounterMonsterSneakVision)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum BlackLimitLevel {
    All = 0,
}
impl BlackLimitLevel {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            BlackLimitLevel::All => "BLACK_LIMIT_LEVEL_ALL",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "BLACK_LIMIT_LEVEL_ALL" => Some(Self::All),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum AreaType {
    AreaNone = 0,
    AreaCn = 1,
    AreaJp = 2,
    AreaAsia = 3,
    AreaWest = 4,
    AreaKr = 5,
    AreaOverseas = 6,
}
impl AreaType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            AreaType::AreaNone => "AREA_NONE",
            AreaType::AreaCn => "AREA_CN",
            AreaType::AreaJp => "AREA_JP",
            AreaType::AreaAsia => "AREA_ASIA",
            AreaType::AreaWest => "AREA_WEST",
            AreaType::AreaKr => "AREA_KR",
            AreaType::AreaOverseas => "AREA_OVERSEAS",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "AREA_NONE" => Some(Self::AreaNone),
            "AREA_CN" => Some(Self::AreaCn),
            "AREA_JP" => Some(Self::AreaJp),
            "AREA_ASIA" => Some(Self::AreaAsia),
            "AREA_WEST" => Some(Self::AreaWest),
            "AREA_KR" => Some(Self::AreaKr),
            "AREA_OVERSEAS" => Some(Self::AreaOverseas),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum EntityType {
    EntityNone = 0,
    EntityAvatar = 1,
    EntityMonster = 2,
    EntityNpc = 3,
    EntityProp = 4,
    EntityTrigger = 5,
    EntityEnv = 6,
    EntitySummonUnit = 7,
}
impl EntityType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            EntityType::EntityNone => "ENTITY_NONE",
            EntityType::EntityAvatar => "ENTITY_AVATAR",
            EntityType::EntityMonster => "ENTITY_MONSTER",
            EntityType::EntityNpc => "ENTITY_NPC",
            EntityType::EntityProp => "ENTITY_PROP",
            EntityType::EntityTrigger => "ENTITY_TRIGGER",
            EntityType::EntityEnv => "ENTITY_ENV",
            EntityType::EntitySummonUnit => "ENTITY_SUMMON_UNIT",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ENTITY_NONE" => Some(Self::EntityNone),
            "ENTITY_AVATAR" => Some(Self::EntityAvatar),
            "ENTITY_MONSTER" => Some(Self::EntityMonster),
            "ENTITY_NPC" => Some(Self::EntityNpc),
            "ENTITY_PROP" => Some(Self::EntityProp),
            "ENTITY_TRIGGER" => Some(Self::EntityTrigger),
            "ENTITY_ENV" => Some(Self::EntityEnv),
            "ENTITY_SUMMON_UNIT" => Some(Self::EntitySummonUnit),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum LanguageType {
    LanguageNone = 0,
    LanguageSc = 1,
    LanguageTc = 2,
    LanguageEn = 3,
    LanguageKr = 4,
    LanguageJp = 5,
    LanguageFr = 6,
    LanguageDe = 7,
    LanguageEs = 8,
    LanguagePt = 9,
    LanguageRu = 10,
    LanguageTh = 11,
    LanguageVi = 12,
    LanguageId = 13,
}
impl LanguageType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            LanguageType::LanguageNone => "LANGUAGE_NONE",
            LanguageType::LanguageSc => "LANGUAGE_SC",
            LanguageType::LanguageTc => "LANGUAGE_TC",
            LanguageType::LanguageEn => "LANGUAGE_EN",
            LanguageType::LanguageKr => "LANGUAGE_KR",
            LanguageType::LanguageJp => "LANGUAGE_JP",
            LanguageType::LanguageFr => "LANGUAGE_FR",
            LanguageType::LanguageDe => "LANGUAGE_DE",
            LanguageType::LanguageEs => "LANGUAGE_ES",
            LanguageType::LanguagePt => "LANGUAGE_PT",
            LanguageType::LanguageRu => "LANGUAGE_RU",
            LanguageType::LanguageTh => "LANGUAGE_TH",
            LanguageType::LanguageVi => "LANGUAGE_VI",
            LanguageType::LanguageId => "LANGUAGE_ID",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "LANGUAGE_NONE" => Some(Self::LanguageNone),
            "LANGUAGE_SC" => Some(Self::LanguageSc),
            "LANGUAGE_TC" => Some(Self::LanguageTc),
            "LANGUAGE_EN" => Some(Self::LanguageEn),
            "LANGUAGE_KR" => Some(Self::LanguageKr),
            "LANGUAGE_JP" => Some(Self::LanguageJp),
            "LANGUAGE_FR" => Some(Self::LanguageFr),
            "LANGUAGE_DE" => Some(Self::LanguageDe),
            "LANGUAGE_ES" => Some(Self::LanguageEs),
            "LANGUAGE_PT" => Some(Self::LanguagePt),
            "LANGUAGE_RU" => Some(Self::LanguageRu),
            "LANGUAGE_TH" => Some(Self::LanguageTh),
            "LANGUAGE_VI" => Some(Self::LanguageVi),
            "LANGUAGE_ID" => Some(Self::LanguageId),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum PlatformType {
    Editor = 0,
    Ios = 1,
    Android = 2,
    Pc = 3,
    Web = 4,
    Wap = 5,
    Ps4 = 6,
    Nintendo = 7,
    CloudAndroid = 8,
    CloudPc = 9,
    CloudIos = 10,
    Ps5 = 11,
    Mac = 12,
    CloudMac = 13,
    CloudWebAndroid = 20,
    CloudWebIos = 21,
    CloudWebPc = 22,
    CloudWebMac = 23,
    CloudWebTouch = 24,
    CloudWebKeyboard = 25,
}
impl PlatformType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            PlatformType::Editor => "EDITOR",
            PlatformType::Ios => "IOS",
            PlatformType::Android => "ANDROID",
            PlatformType::Pc => "PC",
            PlatformType::Web => "WEB",
            PlatformType::Wap => "WAP",
            PlatformType::Ps4 => "PS4",
            PlatformType::Nintendo => "NINTENDO",
            PlatformType::CloudAndroid => "CLOUD_ANDROID",
            PlatformType::CloudPc => "CLOUD_PC",
            PlatformType::CloudIos => "CLOUD_IOS",
            PlatformType::Ps5 => "PS5",
            PlatformType::Mac => "MAC",
            PlatformType::CloudMac => "CLOUD_MAC",
            PlatformType::CloudWebAndroid => "CLOUD_WEB_ANDROID",
            PlatformType::CloudWebIos => "CLOUD_WEB_IOS",
            PlatformType::CloudWebPc => "CLOUD_WEB_PC",
            PlatformType::CloudWebMac => "CLOUD_WEB_MAC",
            PlatformType::CloudWebTouch => "CLOUD_WEB_TOUCH",
            PlatformType::CloudWebKeyboard => "CLOUD_WEB_KEYBOARD",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "EDITOR" => Some(Self::Editor),
            "IOS" => Some(Self::Ios),
            "ANDROID" => Some(Self::Android),
            "PC" => Some(Self::Pc),
            "WEB" => Some(Self::Web),
            "WAP" => Some(Self::Wap),
            "PS4" => Some(Self::Ps4),
            "NINTENDO" => Some(Self::Nintendo),
            "CLOUD_ANDROID" => Some(Self::CloudAndroid),
            "CLOUD_PC" => Some(Self::CloudPc),
            "CLOUD_IOS" => Some(Self::CloudIos),
            "PS5" => Some(Self::Ps5),
            "MAC" => Some(Self::Mac),
            "CLOUD_MAC" => Some(Self::CloudMac),
            "CLOUD_WEB_ANDROID" => Some(Self::CloudWebAndroid),
            "CLOUD_WEB_IOS" => Some(Self::CloudWebIos),
            "CLOUD_WEB_PC" => Some(Self::CloudWebPc),
            "CLOUD_WEB_MAC" => Some(Self::CloudWebMac),
            "CLOUD_WEB_TOUCH" => Some(Self::CloudWebTouch),
            "CLOUD_WEB_KEYBOARD" => Some(Self::CloudWebKeyboard),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ReloginType {
    NoKick = 0,
    ForceKick = 1,
    IdleKick = 2,
    Silence = 3,
}
impl ReloginType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            ReloginType::NoKick => "NO_KICK",
            ReloginType::ForceKick => "FORCE_KICK",
            ReloginType::IdleKick => "IDLE_KICK",
            ReloginType::Silence => "SILENCE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "NO_KICK" => Some(Self::NoKick),
            "FORCE_KICK" => Some(Self::ForceKick),
            "IDLE_KICK" => Some(Self::IdleKick),
            "SILENCE" => Some(Self::Silence),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum AvatarType {
    None = 0,
    AvatarTrialType = 1,
    AvatarLimitType = 2,
    AvatarFormalType = 3,
    AvatarAssistType = 4,
    AvatarAetherDivideType = 5,
}
impl AvatarType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            AvatarType::None => "AVATAR_TYPE_NONE",
            AvatarType::AvatarTrialType => "AVATAR_TRIAL_TYPE",
            AvatarType::AvatarLimitType => "AVATAR_LIMIT_TYPE",
            AvatarType::AvatarFormalType => "AVATAR_FORMAL_TYPE",
            AvatarType::AvatarAssistType => "AVATAR_ASSIST_TYPE",
            AvatarType::AvatarAetherDivideType => "AVATAR_AETHER_DIVIDE_TYPE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "AVATAR_TYPE_NONE" => Some(Self::None),
            "AVATAR_TRIAL_TYPE" => Some(Self::AvatarTrialType),
            "AVATAR_LIMIT_TYPE" => Some(Self::AvatarLimitType),
            "AVATAR_FORMAL_TYPE" => Some(Self::AvatarFormalType),
            "AVATAR_ASSIST_TYPE" => Some(Self::AvatarAssistType),
            "AVATAR_AETHER_DIVIDE_TYPE" => Some(Self::AvatarAetherDivideType),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum HeroBasicType {
    None = 0,
    BoyWarrior = 8001,
    GirlWarrior = 8002,
    BoyKnight = 8003,
    GirlKnight = 8004,
    BoyShaman = 8005,
    GirlShaman = 8006,
    BoyMage = 8007,
    GirlMage = 8008,
    BoyRogue = 8009,
    GirlRogue = 8010,
    BoyWarlock = 8011,
    GirlWarlock = 8012,
    BoyPriest = 8013,
    GirlPriest = 8014,
}
impl HeroBasicType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            HeroBasicType::None => "None",
            HeroBasicType::BoyWarrior => "BoyWarrior",
            HeroBasicType::GirlWarrior => "GirlWarrior",
            HeroBasicType::BoyKnight => "BoyKnight",
            HeroBasicType::GirlKnight => "GirlKnight",
            HeroBasicType::BoyShaman => "BoyShaman",
            HeroBasicType::GirlShaman => "GirlShaman",
            HeroBasicType::BoyMage => "BoyMage",
            HeroBasicType::GirlMage => "GirlMage",
            HeroBasicType::BoyRogue => "BoyRogue",
            HeroBasicType::GirlRogue => "GirlRogue",
            HeroBasicType::BoyWarlock => "BoyWarlock",
            HeroBasicType::GirlWarlock => "GirlWarlock",
            HeroBasicType::BoyPriest => "BoyPriest",
            HeroBasicType::GirlPriest => "GirlPriest",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "None" => Some(Self::None),
            "BoyWarrior" => Some(Self::BoyWarrior),
            "GirlWarrior" => Some(Self::GirlWarrior),
            "BoyKnight" => Some(Self::BoyKnight),
            "GirlKnight" => Some(Self::GirlKnight),
            "BoyShaman" => Some(Self::BoyShaman),
            "GirlShaman" => Some(Self::GirlShaman),
            "BoyMage" => Some(Self::BoyMage),
            "GirlMage" => Some(Self::GirlMage),
            "BoyRogue" => Some(Self::BoyRogue),
            "GirlRogue" => Some(Self::GirlRogue),
            "BoyWarlock" => Some(Self::BoyWarlock),
            "GirlWarlock" => Some(Self::GirlWarlock),
            "BoyPriest" => Some(Self::BoyPriest),
            "GirlPriest" => Some(Self::GirlPriest),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Gender {
    None = 0,
    Man = 1,
    Woman = 2,
}
impl Gender {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Gender::None => "GenderNone",
            Gender::Man => "GenderMan",
            Gender::Woman => "GenderWoman",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "GenderNone" => Some(Self::None),
            "GenderMan" => Some(Self::Man),
            "GenderWoman" => Some(Self::Woman),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ProductType {
    ProductNone = 0,
    ProductNormal = 1,
    ProductLimit = 2,
    ProductLimitNoPay = 3,
    ProductNoProcessOrder = 4,
}
impl ProductType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            ProductType::ProductNone => "PRODUCT_NONE",
            ProductType::ProductNormal => "PRODUCT_NORMAL",
            ProductType::ProductLimit => "PRODUCT_LIMIT",
            ProductType::ProductLimitNoPay => "PRODUCT_LIMIT_NO_PAY",
            ProductType::ProductNoProcessOrder => "PRODUCT_NO_PROCESS_ORDER",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "PRODUCT_NONE" => Some(Self::ProductNone),
            "PRODUCT_NORMAL" => Some(Self::ProductNormal),
            "PRODUCT_LIMIT" => Some(Self::ProductLimit),
            "PRODUCT_LIMIT_NO_PAY" => Some(Self::ProductLimitNoPay),
            "PRODUCT_NO_PROCESS_ORDER" => Some(Self::ProductNoProcessOrder),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ProductGiftType {
    ProductGiftNone = 0,
    ProductGiftCoin = 1,
    ProductGiftMonthCard = 2,
    ProductGiftBp68 = 3,
    ProductGiftBp128 = 4,
    ProductGiftBp68Upgrade128 = 5,
    ProductGiftPointCard = 6,
    ProductGiftPsPreOrder1 = 7,
    ProductGiftPsPreOrder2 = 8,
    ProductGiftGooglePoints100 = 9,
    ProductGiftGooglePoints150 = 10,
    ProductGiftPsPointCard030 = 11,
    ProductGiftPsPointCard050 = 12,
    ProductGiftPsPointCard100 = 13,
}
impl ProductGiftType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            ProductGiftType::ProductGiftNone => "PRODUCT_GIFT_NONE",
            ProductGiftType::ProductGiftCoin => "PRODUCT_GIFT_COIN",
            ProductGiftType::ProductGiftMonthCard => "PRODUCT_GIFT_MONTH_CARD",
            ProductGiftType::ProductGiftBp68 => "PRODUCT_GIFT_BP_68",
            ProductGiftType::ProductGiftBp128 => "PRODUCT_GIFT_BP_128",
            ProductGiftType::ProductGiftBp68Upgrade128 => "PRODUCT_GIFT_BP68_UPGRADE_128",
            ProductGiftType::ProductGiftPointCard => "PRODUCT_GIFT_POINT_CARD",
            ProductGiftType::ProductGiftPsPreOrder1 => "PRODUCT_GIFT_PS_PRE_ORDER_1",
            ProductGiftType::ProductGiftPsPreOrder2 => "PRODUCT_GIFT_PS_PRE_ORDER_2",
            ProductGiftType::ProductGiftGooglePoints100 => {
                "PRODUCT_GIFT_GOOGLE_POINTS_100"
            }
            ProductGiftType::ProductGiftGooglePoints150 => {
                "PRODUCT_GIFT_GOOGLE_POINTS_150"
            }
            ProductGiftType::ProductGiftPsPointCard030 => {
                "PRODUCT_GIFT_PS_POINT_CARD_030"
            }
            ProductGiftType::ProductGiftPsPointCard050 => {
                "PRODUCT_GIFT_PS_POINT_CARD_050"
            }
            ProductGiftType::ProductGiftPsPointCard100 => {
                "PRODUCT_GIFT_PS_POINT_CARD_100"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "PRODUCT_GIFT_NONE" => Some(Self::ProductGiftNone),
            "PRODUCT_GIFT_COIN" => Some(Self::ProductGiftCoin),
            "PRODUCT_GIFT_MONTH_CARD" => Some(Self::ProductGiftMonthCard),
            "PRODUCT_GIFT_BP_68" => Some(Self::ProductGiftBp68),
            "PRODUCT_GIFT_BP_128" => Some(Self::ProductGiftBp128),
            "PRODUCT_GIFT_BP68_UPGRADE_128" => Some(Self::ProductGiftBp68Upgrade128),
            "PRODUCT_GIFT_POINT_CARD" => Some(Self::ProductGiftPointCard),
            "PRODUCT_GIFT_PS_PRE_ORDER_1" => Some(Self::ProductGiftPsPreOrder1),
            "PRODUCT_GIFT_PS_PRE_ORDER_2" => Some(Self::ProductGiftPsPreOrder2),
            "PRODUCT_GIFT_GOOGLE_POINTS_100" => Some(Self::ProductGiftGooglePoints100),
            "PRODUCT_GIFT_GOOGLE_POINTS_150" => Some(Self::ProductGiftGooglePoints150),
            "PRODUCT_GIFT_PS_POINT_CARD_030" => Some(Self::ProductGiftPsPointCard030),
            "PRODUCT_GIFT_PS_POINT_CARD_050" => Some(Self::ProductGiftPsPointCard050),
            "PRODUCT_GIFT_PS_POINT_CARD_100" => Some(Self::ProductGiftPsPointCard100),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum FeatureSwitchType {
    FeatureSwitchNone = 0,
    FeatureSwitchShop = 1,
    FeatureSwitchLineupName = 2,
    FeatureSwitchRechargeShop = 3,
    FeatureSwitchNickname = 4,
    FeatureSwitchSignature = 5,
    FeatureSwitchBattlepass = 6,
    FeatureSwitchPunkLord = 7,
    FeatureSwitchMonthcardDaily = 8,
    FeatureSwitchPictureShare = 9,
    FeatureSwitchRogue = 10,
    FeatureSwitchChallenge = 11,
    FeatureSwitchCocoon = 12,
    FeatureSwitchRaid = 13,
    FeatureSwitchMazePlaneEvent = 14,
    FeatureSwitchActivityPanel = 15,
    FeatureSwitchMailbox = 16,
    FeatureSwitchQuest = 17,
    FeatureSwitchGacha = 18,
    FeatureSwitchChat = 19,
    FeatureSwitchModifyFriendAlias = 20,
    FeatureSwitchUseItem = 21,
    FeatureSwitchActivitySchedule = 22,
    FeatureSwitchFarmElement = 23,
    FeatureSwitchAchievementLevel = 24,
    FeatureSwitchDailyActiveLevel = 25,
    FeatureSwitchPlayerReturn = 26,
    FeatureSwitchFirstSetNickname = 27,
    FeatureSwitchMainMissionReward = 28,
    FeatureSwitchSubMissionReward = 29,
    FeatureSwitchPamMission = 30,
    FeatureSwitchDailyMission = 31,
    FeatureSwitchDestroyItem = 32,
    FeatureSwitchConsumeItemTurn = 33,
    FeatureSwitchRogueModifier = 34,
    FeatureSwitchChessRogue = 35,
    FeatureSwitchChessRogueBoard = 36,
    FeatureSwitchRollShop = 37,
    FeatureSwitchH5Return = 38,
    FeatureSwitchOffering = 39,
    FeatureSwitchServerRedPoint = 40,
    FeatureSwitchMonopolyOptionRatio = 41,
    FeatureSwitchMonopolyGetRaffleTicket = 42,
    FeatureSwitchMonopolyTakeRaffleReward = 43,
    FeatureSwitchChallengeRecommendLineup = 44,
}
impl FeatureSwitchType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            FeatureSwitchType::FeatureSwitchNone => "FEATURE_SWITCH_NONE",
            FeatureSwitchType::FeatureSwitchShop => "FEATURE_SWITCH_SHOP",
            FeatureSwitchType::FeatureSwitchLineupName => "FEATURE_SWITCH_LINEUP_NAME",
            FeatureSwitchType::FeatureSwitchRechargeShop => {
                "FEATURE_SWITCH_RECHARGE_SHOP"
            }
            FeatureSwitchType::FeatureSwitchNickname => "FEATURE_SWITCH_NICKNAME",
            FeatureSwitchType::FeatureSwitchSignature => "FEATURE_SWITCH_SIGNATURE",
            FeatureSwitchType::FeatureSwitchBattlepass => "FEATURE_SWITCH_BATTLEPASS",
            FeatureSwitchType::FeatureSwitchPunkLord => "FEATURE_SWITCH_PUNK_LORD",
            FeatureSwitchType::FeatureSwitchMonthcardDaily => {
                "FEATURE_SWITCH_MONTHCARD_DAILY"
            }
            FeatureSwitchType::FeatureSwitchPictureShare => {
                "FEATURE_SWITCH_PICTURE_SHARE"
            }
            FeatureSwitchType::FeatureSwitchRogue => "FEATURE_SWITCH_ROGUE",
            FeatureSwitchType::FeatureSwitchChallenge => "FEATURE_SWITCH_CHALLENGE",
            FeatureSwitchType::FeatureSwitchCocoon => "FEATURE_SWITCH_COCOON",
            FeatureSwitchType::FeatureSwitchRaid => "FEATURE_SWITCH_RAID",
            FeatureSwitchType::FeatureSwitchMazePlaneEvent => {
                "FEATURE_SWITCH_MAZE_PLANE_EVENT"
            }
            FeatureSwitchType::FeatureSwitchActivityPanel => {
                "FEATURE_SWITCH_ACTIVITY_PANEL"
            }
            FeatureSwitchType::FeatureSwitchMailbox => "FEATURE_SWITCH_MAILBOX",
            FeatureSwitchType::FeatureSwitchQuest => "FEATURE_SWITCH_QUEST",
            FeatureSwitchType::FeatureSwitchGacha => "FEATURE_SWITCH_GACHA",
            FeatureSwitchType::FeatureSwitchChat => "FEATURE_SWITCH_CHAT",
            FeatureSwitchType::FeatureSwitchModifyFriendAlias => {
                "FEATURE_SWITCH_MODIFY_FRIEND_ALIAS"
            }
            FeatureSwitchType::FeatureSwitchUseItem => "FEATURE_SWITCH_USE_ITEM",
            FeatureSwitchType::FeatureSwitchActivitySchedule => {
                "FEATURE_SWITCH_ACTIVITY_SCHEDULE"
            }
            FeatureSwitchType::FeatureSwitchFarmElement => "FEATURE_SWITCH_FARM_ELEMENT",
            FeatureSwitchType::FeatureSwitchAchievementLevel => {
                "FEATURE_SWITCH_ACHIEVEMENT_LEVEL"
            }
            FeatureSwitchType::FeatureSwitchDailyActiveLevel => {
                "FEATURE_SWITCH_DAILY_ACTIVE_LEVEL"
            }
            FeatureSwitchType::FeatureSwitchPlayerReturn => {
                "FEATURE_SWITCH_PLAYER_RETURN"
            }
            FeatureSwitchType::FeatureSwitchFirstSetNickname => {
                "FEATURE_SWITCH_FIRST_SET_NICKNAME"
            }
            FeatureSwitchType::FeatureSwitchMainMissionReward => {
                "FEATURE_SWITCH_MAIN_MISSION_REWARD"
            }
            FeatureSwitchType::FeatureSwitchSubMissionReward => {
                "FEATURE_SWITCH_SUB_MISSION_REWARD"
            }
            FeatureSwitchType::FeatureSwitchPamMission => "FEATURE_SWITCH_PAM_MISSION",
            FeatureSwitchType::FeatureSwitchDailyMission => {
                "FEATURE_SWITCH_DAILY_MISSION"
            }
            FeatureSwitchType::FeatureSwitchDestroyItem => "FEATURE_SWITCH_DESTROY_ITEM",
            FeatureSwitchType::FeatureSwitchConsumeItemTurn => {
                "FEATURE_SWITCH_CONSUME_ITEM_TURN"
            }
            FeatureSwitchType::FeatureSwitchRogueModifier => {
                "FEATURE_SWITCH_ROGUE_MODIFIER"
            }
            FeatureSwitchType::FeatureSwitchChessRogue => "FEATURE_SWITCH_CHESS_ROGUE",
            FeatureSwitchType::FeatureSwitchChessRogueBoard => {
                "FEATURE_SWITCH_CHESS_ROGUE_BOARD"
            }
            FeatureSwitchType::FeatureSwitchRollShop => "FEATURE_SWITCH_ROLL_SHOP",
            FeatureSwitchType::FeatureSwitchH5Return => "FEATURE_SWITCH_H5_RETURN",
            FeatureSwitchType::FeatureSwitchOffering => "FEATURE_SWITCH_OFFERING",
            FeatureSwitchType::FeatureSwitchServerRedPoint => {
                "FEATURE_SWITCH_SERVER_RED_POINT"
            }
            FeatureSwitchType::FeatureSwitchMonopolyOptionRatio => {
                "FEATURE_SWITCH_MONOPOLY_OPTION_RATIO"
            }
            FeatureSwitchType::FeatureSwitchMonopolyGetRaffleTicket => {
                "FEATURE_SWITCH_MONOPOLY_GET_RAFFLE_TICKET"
            }
            FeatureSwitchType::FeatureSwitchMonopolyTakeRaffleReward => {
                "FEATURE_SWITCH_MONOPOLY_TAKE_RAFFLE_REWARD"
            }
            FeatureSwitchType::FeatureSwitchChallengeRecommendLineup => {
                "FEATURE_SWITCH_CHALLENGE_RECOMMEND_LINEUP"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "FEATURE_SWITCH_NONE" => Some(Self::FeatureSwitchNone),
            "FEATURE_SWITCH_SHOP" => Some(Self::FeatureSwitchShop),
            "FEATURE_SWITCH_LINEUP_NAME" => Some(Self::FeatureSwitchLineupName),
            "FEATURE_SWITCH_RECHARGE_SHOP" => Some(Self::FeatureSwitchRechargeShop),
            "FEATURE_SWITCH_NICKNAME" => Some(Self::FeatureSwitchNickname),
            "FEATURE_SWITCH_SIGNATURE" => Some(Self::FeatureSwitchSignature),
            "FEATURE_SWITCH_BATTLEPASS" => Some(Self::FeatureSwitchBattlepass),
            "FEATURE_SWITCH_PUNK_LORD" => Some(Self::FeatureSwitchPunkLord),
            "FEATURE_SWITCH_MONTHCARD_DAILY" => Some(Self::FeatureSwitchMonthcardDaily),
            "FEATURE_SWITCH_PICTURE_SHARE" => Some(Self::FeatureSwitchPictureShare),
            "FEATURE_SWITCH_ROGUE" => Some(Self::FeatureSwitchRogue),
            "FEATURE_SWITCH_CHALLENGE" => Some(Self::FeatureSwitchChallenge),
            "FEATURE_SWITCH_COCOON" => Some(Self::FeatureSwitchCocoon),
            "FEATURE_SWITCH_RAID" => Some(Self::FeatureSwitchRaid),
            "FEATURE_SWITCH_MAZE_PLANE_EVENT" => Some(Self::FeatureSwitchMazePlaneEvent),
            "FEATURE_SWITCH_ACTIVITY_PANEL" => Some(Self::FeatureSwitchActivityPanel),
            "FEATURE_SWITCH_MAILBOX" => Some(Self::FeatureSwitchMailbox),
            "FEATURE_SWITCH_QUEST" => Some(Self::FeatureSwitchQuest),
            "FEATURE_SWITCH_GACHA" => Some(Self::FeatureSwitchGacha),
            "FEATURE_SWITCH_CHAT" => Some(Self::FeatureSwitchChat),
            "FEATURE_SWITCH_MODIFY_FRIEND_ALIAS" => {
                Some(Self::FeatureSwitchModifyFriendAlias)
            }
            "FEATURE_SWITCH_USE_ITEM" => Some(Self::FeatureSwitchUseItem),
            "FEATURE_SWITCH_ACTIVITY_SCHEDULE" => {
                Some(Self::FeatureSwitchActivitySchedule)
            }
            "FEATURE_SWITCH_FARM_ELEMENT" => Some(Self::FeatureSwitchFarmElement),
            "FEATURE_SWITCH_ACHIEVEMENT_LEVEL" => {
                Some(Self::FeatureSwitchAchievementLevel)
            }
            "FEATURE_SWITCH_DAILY_ACTIVE_LEVEL" => {
                Some(Self::FeatureSwitchDailyActiveLevel)
            }
            "FEATURE_SWITCH_PLAYER_RETURN" => Some(Self::FeatureSwitchPlayerReturn),
            "FEATURE_SWITCH_FIRST_SET_NICKNAME" => {
                Some(Self::FeatureSwitchFirstSetNickname)
            }
            "FEATURE_SWITCH_MAIN_MISSION_REWARD" => {
                Some(Self::FeatureSwitchMainMissionReward)
            }
            "FEATURE_SWITCH_SUB_MISSION_REWARD" => {
                Some(Self::FeatureSwitchSubMissionReward)
            }
            "FEATURE_SWITCH_PAM_MISSION" => Some(Self::FeatureSwitchPamMission),
            "FEATURE_SWITCH_DAILY_MISSION" => Some(Self::FeatureSwitchDailyMission),
            "FEATURE_SWITCH_DESTROY_ITEM" => Some(Self::FeatureSwitchDestroyItem),
            "FEATURE_SWITCH_CONSUME_ITEM_TURN" => {
                Some(Self::FeatureSwitchConsumeItemTurn)
            }
            "FEATURE_SWITCH_ROGUE_MODIFIER" => Some(Self::FeatureSwitchRogueModifier),
            "FEATURE_SWITCH_CHESS_ROGUE" => Some(Self::FeatureSwitchChessRogue),
            "FEATURE_SWITCH_CHESS_ROGUE_BOARD" => {
                Some(Self::FeatureSwitchChessRogueBoard)
            }
            "FEATURE_SWITCH_ROLL_SHOP" => Some(Self::FeatureSwitchRollShop),
            "FEATURE_SWITCH_H5_RETURN" => Some(Self::FeatureSwitchH5Return),
            "FEATURE_SWITCH_OFFERING" => Some(Self::FeatureSwitchOffering),
            "FEATURE_SWITCH_SERVER_RED_POINT" => Some(Self::FeatureSwitchServerRedPoint),
            "FEATURE_SWITCH_MONOPOLY_OPTION_RATIO" => {
                Some(Self::FeatureSwitchMonopolyOptionRatio)
            }
            "FEATURE_SWITCH_MONOPOLY_GET_RAFFLE_TICKET" => {
                Some(Self::FeatureSwitchMonopolyGetRaffleTicket)
            }
            "FEATURE_SWITCH_MONOPOLY_TAKE_RAFFLE_REWARD" => {
                Some(Self::FeatureSwitchMonopolyTakeRaffleReward)
            }
            "FEATURE_SWITCH_CHALLENGE_RECOMMEND_LINEUP" => {
                Some(Self::FeatureSwitchChallengeRecommendLineup)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum SecretKeyType {
    SecretKeyNone = 0,
    SecretKeyServerCheck = 1,
    SecretKeyVideo = 2,
    SecretKeyBattleTime = 3,
}
impl SecretKeyType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            SecretKeyType::SecretKeyNone => "SECRET_KEY_NONE",
            SecretKeyType::SecretKeyServerCheck => "SECRET_KEY_SERVER_CHECK",
            SecretKeyType::SecretKeyVideo => "SECRET_KEY_VIDEO",
            SecretKeyType::SecretKeyBattleTime => "SECRET_KEY_BATTLE_TIME",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "SECRET_KEY_NONE" => Some(Self::SecretKeyNone),
            "SECRET_KEY_SERVER_CHECK" => Some(Self::SecretKeyServerCheck),
            "SECRET_KEY_VIDEO" => Some(Self::SecretKeyVideo),
            "SECRET_KEY_BATTLE_TIME" => Some(Self::SecretKeyBattleTime),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ReplayType {
    None = 0,
    PunkLord = 1,
}
impl ReplayType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            ReplayType::None => "REPLAY_TYPE_NONE",
            ReplayType::PunkLord => "REPLAY_TYPE_PUNK_LORD",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "REPLAY_TYPE_NONE" => Some(Self::None),
            "REPLAY_TYPE_PUNK_LORD" => Some(Self::PunkLord),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum PunkLordShareType {
    None = 0,
    Friend = 1,
    All = 2,
}
impl PunkLordShareType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            PunkLordShareType::None => "PUNK_LORD_SHARE_TYPE_NONE",
            PunkLordShareType::Friend => "PUNK_LORD_SHARE_TYPE_FRIEND",
            PunkLordShareType::All => "PUNK_LORD_SHARE_TYPE_ALL",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "PUNK_LORD_SHARE_TYPE_NONE" => Some(Self::None),
            "PUNK_LORD_SHARE_TYPE_FRIEND" => Some(Self::Friend),
            "PUNK_LORD_SHARE_TYPE_ALL" => Some(Self::All),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum PunkLordAttackerStatus {
    None = 0,
    Attacked = 1,
    Attacking = 2,
    AttackedAndAttacking = 3,
}
impl PunkLordAttackerStatus {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            PunkLordAttackerStatus::None => "PUNK_LORD_ATTACKER_STATUS_NONE",
            PunkLordAttackerStatus::Attacked => "PUNK_LORD_ATTACKER_STATUS_ATTACKED",
            PunkLordAttackerStatus::Attacking => "PUNK_LORD_ATTACKER_STATUS_ATTACKING",
            PunkLordAttackerStatus::AttackedAndAttacking => {
                "PUNK_LORD_ATTACKER_STATUS_ATTACKED_AND_ATTACKING"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "PUNK_LORD_ATTACKER_STATUS_NONE" => Some(Self::None),
            "PUNK_LORD_ATTACKER_STATUS_ATTACKED" => Some(Self::Attacked),
            "PUNK_LORD_ATTACKER_STATUS_ATTACKING" => Some(Self::Attacking),
            "PUNK_LORD_ATTACKER_STATUS_ATTACKED_AND_ATTACKING" => {
                Some(Self::AttackedAndAttacking)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum PunkLordMonsterInfoNotifyReason {
    None = 0,
    EnterRaid = 1,
    BattleEnd = 2,
    LeaveRaid = 3,
}
impl PunkLordMonsterInfoNotifyReason {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            PunkLordMonsterInfoNotifyReason::None => {
                "PUNK_LORD_MONSTER_INFO_NOTIFY_REASON_NONE"
            }
            PunkLordMonsterInfoNotifyReason::EnterRaid => {
                "PUNK_LORD_MONSTER_INFO_NOTIFY_REASON_ENTER_RAID"
            }
            PunkLordMonsterInfoNotifyReason::BattleEnd => {
                "PUNK_LORD_MONSTER_INFO_NOTIFY_REASON_BATTLE_END"
            }
            PunkLordMonsterInfoNotifyReason::LeaveRaid => {
                "PUNK_LORD_MONSTER_INFO_NOTIFY_REASON_LEAVE_RAID"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "PUNK_LORD_MONSTER_INFO_NOTIFY_REASON_NONE" => Some(Self::None),
            "PUNK_LORD_MONSTER_INFO_NOTIFY_REASON_ENTER_RAID" => Some(Self::EnterRaid),
            "PUNK_LORD_MONSTER_INFO_NOTIFY_REASON_BATTLE_END" => Some(Self::BattleEnd),
            "PUNK_LORD_MONSTER_INFO_NOTIFY_REASON_LEAVE_RAID" => Some(Self::LeaveRaid),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ChatType {
    None = 0,
    Private = 1,
    Group = 2,
}
impl ChatType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            ChatType::None => "CHAT_TYPE_NONE",
            ChatType::Private => "CHAT_TYPE_PRIVATE",
            ChatType::Group => "CHAT_TYPE_GROUP",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CHAT_TYPE_NONE" => Some(Self::None),
            "CHAT_TYPE_PRIVATE" => Some(Self::Private),
            "CHAT_TYPE_GROUP" => Some(Self::Group),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum MsgType {
    None = 0,
    CustomText = 1,
    Emoji = 2,
}
impl MsgType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            MsgType::None => "MSG_TYPE_NONE",
            MsgType::CustomText => "MSG_TYPE_CUSTOM_TEXT",
            MsgType::Emoji => "MSG_TYPE_EMOJI",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "MSG_TYPE_NONE" => Some(Self::None),
            "MSG_TYPE_CUSTOM_TEXT" => Some(Self::CustomText),
            "MSG_TYPE_EMOJI" => Some(Self::Emoji),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ShieldType {
    None = 0,
    Replace = 1,
    Shied = 2,
}
impl ShieldType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            ShieldType::None => "SHIELD_TYPE_NONE",
            ShieldType::Replace => "SHIELD_TYPE_REPLACE",
            ShieldType::Shied => "SHIELD_TYPE_SHIED",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "SHIELD_TYPE_NONE" => Some(Self::None),
            "SHIELD_TYPE_REPLACE" => Some(Self::Replace),
            "SHIELD_TYPE_SHIED" => Some(Self::Shied),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum FuncUnlockId {
    None = 0,
    Relic = 401,
    RelicNum = 402,
    Equipment = 403,
    Skilltree = 404,
    Gacha = 2300,
    Expedition = 3100,
    Compose = 3700,
    Fightactivity = 4100,
}
impl FuncUnlockId {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            FuncUnlockId::None => "FUNC_UNLOCK_ID_NONE",
            FuncUnlockId::Relic => "FUNC_UNLOCK_ID_RELIC",
            FuncUnlockId::RelicNum => "FUNC_UNLOCK_ID_RELIC_NUM",
            FuncUnlockId::Equipment => "FUNC_UNLOCK_ID_EQUIPMENT",
            FuncUnlockId::Skilltree => "FUNC_UNLOCK_ID_SKILLTREE",
            FuncUnlockId::Gacha => "FUNC_UNLOCK_ID_GACHA",
            FuncUnlockId::Expedition => "FUNC_UNLOCK_ID_EXPEDITION",
            FuncUnlockId::Compose => "FUNC_UNLOCK_ID_COMPOSE",
            FuncUnlockId::Fightactivity => "FUNC_UNLOCK_ID_FIGHTACTIVITY",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "FUNC_UNLOCK_ID_NONE" => Some(Self::None),
            "FUNC_UNLOCK_ID_RELIC" => Some(Self::Relic),
            "FUNC_UNLOCK_ID_RELIC_NUM" => Some(Self::RelicNum),
            "FUNC_UNLOCK_ID_EQUIPMENT" => Some(Self::Equipment),
            "FUNC_UNLOCK_ID_SKILLTREE" => Some(Self::Skilltree),
            "FUNC_UNLOCK_ID_GACHA" => Some(Self::Gacha),
            "FUNC_UNLOCK_ID_EXPEDITION" => Some(Self::Expedition),
            "FUNC_UNLOCK_ID_COMPOSE" => Some(Self::Compose),
            "FUNC_UNLOCK_ID_FIGHTACTIVITY" => Some(Self::Fightactivity),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum AssistAvatarType {
    AssistAvatarUnknow = 0,
    AssistAvatarLevel = 1,
    AssistAvatarRank = 2,
}
impl AssistAvatarType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            AssistAvatarType::AssistAvatarUnknow => "ASSIST_AVATAR_UNKNOW",
            AssistAvatarType::AssistAvatarLevel => "ASSIST_AVATAR_LEVEL",
            AssistAvatarType::AssistAvatarRank => "ASSIST_AVATAR_RANK",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ASSIST_AVATAR_UNKNOW" => Some(Self::AssistAvatarUnknow),
            "ASSIST_AVATAR_LEVEL" => Some(Self::AssistAvatarLevel),
            "ASSIST_AVATAR_RANK" => Some(Self::AssistAvatarRank),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum DevelopmentType {
    DevelopmentNone = 0,
    DevelopmentRogueCosmos = 1,
    DevelopmentRogueChess = 2,
    DevelopmentRogueChessNous = 3,
    DevelopmentMemoryChallenge = 4,
    DevelopmentStoryChallenge = 5,
    DevelopmentUnlockAvatar = 6,
    DevelopmentUnlockEquipment = 7,
    DevelopmentActivityStart = 8,
    DevelopmentActivityEnd = 9,
}
impl DevelopmentType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            DevelopmentType::DevelopmentNone => "DEVELOPMENT_NONE",
            DevelopmentType::DevelopmentRogueCosmos => "DEVELOPMENT_ROGUE_COSMOS",
            DevelopmentType::DevelopmentRogueChess => "DEVELOPMENT_ROGUE_CHESS",
            DevelopmentType::DevelopmentRogueChessNous => "DEVELOPMENT_ROGUE_CHESS_NOUS",
            DevelopmentType::DevelopmentMemoryChallenge => "DEVELOPMENT_MEMORY_CHALLENGE",
            DevelopmentType::DevelopmentStoryChallenge => "DEVELOPMENT_STORY_CHALLENGE",
            DevelopmentType::DevelopmentUnlockAvatar => "DEVELOPMENT_UNLOCK_AVATAR",
            DevelopmentType::DevelopmentUnlockEquipment => "DEVELOPMENT_UNLOCK_EQUIPMENT",
            DevelopmentType::DevelopmentActivityStart => "DEVELOPMENT_ACTIVITY_START",
            DevelopmentType::DevelopmentActivityEnd => "DEVELOPMENT_ACTIVITY_END",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "DEVELOPMENT_NONE" => Some(Self::DevelopmentNone),
            "DEVELOPMENT_ROGUE_COSMOS" => Some(Self::DevelopmentRogueCosmos),
            "DEVELOPMENT_ROGUE_CHESS" => Some(Self::DevelopmentRogueChess),
            "DEVELOPMENT_ROGUE_CHESS_NOUS" => Some(Self::DevelopmentRogueChessNous),
            "DEVELOPMENT_MEMORY_CHALLENGE" => Some(Self::DevelopmentMemoryChallenge),
            "DEVELOPMENT_STORY_CHALLENGE" => Some(Self::DevelopmentStoryChallenge),
            "DEVELOPMENT_UNLOCK_AVATAR" => Some(Self::DevelopmentUnlockAvatar),
            "DEVELOPMENT_UNLOCK_EQUIPMENT" => Some(Self::DevelopmentUnlockEquipment),
            "DEVELOPMENT_ACTIVITY_START" => Some(Self::DevelopmentActivityStart),
            "DEVELOPMENT_ACTIVITY_END" => Some(Self::DevelopmentActivityEnd),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum PlayingState {
    None = 0,
    PlayingRogueCosmos = 1,
    PlayingRogueChess = 2,
    PlayingRogueChessNous = 3,
    PlayingChallengeMemory = 4,
    PlayingChallengeStory = 5,
}
impl PlayingState {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            PlayingState::None => "PLAYING_STATE_NONE",
            PlayingState::PlayingRogueCosmos => "PLAYING_ROGUE_COSMOS",
            PlayingState::PlayingRogueChess => "PLAYING_ROGUE_CHESS",
            PlayingState::PlayingRogueChessNous => "PLAYING_ROGUE_CHESS_NOUS",
            PlayingState::PlayingChallengeMemory => "PLAYING_CHALLENGE_MEMORY",
            PlayingState::PlayingChallengeStory => "PLAYING_CHALLENGE_STORY",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "PLAYING_STATE_NONE" => Some(Self::None),
            "PLAYING_ROGUE_COSMOS" => Some(Self::PlayingRogueCosmos),
            "PLAYING_ROGUE_CHESS" => Some(Self::PlayingRogueChess),
            "PLAYING_ROGUE_CHESS_NOUS" => Some(Self::PlayingRogueChessNous),
            "PLAYING_CHALLENGE_MEMORY" => Some(Self::PlayingChallengeMemory),
            "PLAYING_CHALLENGE_STORY" => Some(Self::PlayingChallengeStory),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum BattleCheckStrategyType {
    BattleCheckStrategyIdentical = 0,
    BattleCheckStrategyServer = 1,
    BattleCheckStrategyClient = 2,
}
impl BattleCheckStrategyType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            BattleCheckStrategyType::BattleCheckStrategyIdentical => {
                "BATTLE_CHECK_STRATEGY_IDENTICAL"
            }
            BattleCheckStrategyType::BattleCheckStrategyServer => {
                "BATTLE_CHECK_STRATEGY_SERVER"
            }
            BattleCheckStrategyType::BattleCheckStrategyClient => {
                "BATTLE_CHECK_STRATEGY_CLIENT"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "BATTLE_CHECK_STRATEGY_IDENTICAL" => Some(Self::BattleCheckStrategyIdentical),
            "BATTLE_CHECK_STRATEGY_SERVER" => Some(Self::BattleCheckStrategyServer),
            "BATTLE_CHECK_STRATEGY_CLIENT" => Some(Self::BattleCheckStrategyClient),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum BattleCheckResultType {
    BattleCheckResultSucc = 0,
    BattleCheckResultFail = 1,
    BattleCheckResultPass = 2,
}
impl BattleCheckResultType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            BattleCheckResultType::BattleCheckResultSucc => "BATTLE_CHECK_RESULT_SUCC",
            BattleCheckResultType::BattleCheckResultFail => "BATTLE_CHECK_RESULT_FAIL",
            BattleCheckResultType::BattleCheckResultPass => "BATTLE_CHECK_RESULT_PASS",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "BATTLE_CHECK_RESULT_SUCC" => Some(Self::BattleCheckResultSucc),
            "BATTLE_CHECK_RESULT_FAIL" => Some(Self::BattleCheckResultFail),
            "BATTLE_CHECK_RESULT_PASS" => Some(Self::BattleCheckResultPass),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum BattleModuleType {
    BattleModuleMaze = 0,
    BattleModuleChallenge = 1,
    BattleModuleCocoon = 2,
    BattleModuleRogue = 3,
    BattleModuleChallengeActivity = 4,
    BattleModuleTrialLevel = 5,
    BattleModuleAetherDivide = 6,
}
impl BattleModuleType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            BattleModuleType::BattleModuleMaze => "BATTLE_MODULE_MAZE",
            BattleModuleType::BattleModuleChallenge => "BATTLE_MODULE_CHALLENGE",
            BattleModuleType::BattleModuleCocoon => "BATTLE_MODULE_COCOON",
            BattleModuleType::BattleModuleRogue => "BATTLE_MODULE_ROGUE",
            BattleModuleType::BattleModuleChallengeActivity => {
                "BATTLE_MODULE_CHALLENGE_ACTIVITY"
            }
            BattleModuleType::BattleModuleTrialLevel => "BATTLE_MODULE_TRIAL_LEVEL",
            BattleModuleType::BattleModuleAetherDivide => "BATTLE_MODULE_AETHER_DIVIDE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "BATTLE_MODULE_MAZE" => Some(Self::BattleModuleMaze),
            "BATTLE_MODULE_CHALLENGE" => Some(Self::BattleModuleChallenge),
            "BATTLE_MODULE_COCOON" => Some(Self::BattleModuleCocoon),
            "BATTLE_MODULE_ROGUE" => Some(Self::BattleModuleRogue),
            "BATTLE_MODULE_CHALLENGE_ACTIVITY" => {
                Some(Self::BattleModuleChallengeActivity)
            }
            "BATTLE_MODULE_TRIAL_LEVEL" => Some(Self::BattleModuleTrialLevel),
            "BATTLE_MODULE_AETHER_DIVIDE" => Some(Self::BattleModuleAetherDivide),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Jnengfifgfm {
    AetherdivideSpiritLineupNone = 0,
    AetherdivideSpiritLineupNormal = 1,
    AetherdivideSpiritLineupTrial = 2,
}
impl Jnengfifgfm {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Jnengfifgfm::AetherdivideSpiritLineupNone => {
                "AETHERDIVIDE_SPIRIT_LINEUP_NONE"
            }
            Jnengfifgfm::AetherdivideSpiritLineupNormal => {
                "AETHERDIVIDE_SPIRIT_LINEUP_NORMAL"
            }
            Jnengfifgfm::AetherdivideSpiritLineupTrial => {
                "AETHERDIVIDE_SPIRIT_LINEUP_TRIAL"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "AETHERDIVIDE_SPIRIT_LINEUP_NONE" => Some(Self::AetherdivideSpiritLineupNone),
            "AETHERDIVIDE_SPIRIT_LINEUP_NORMAL" => {
                Some(Self::AetherdivideSpiritLineupNormal)
            }
            "AETHERDIVIDE_SPIRIT_LINEUP_TRIAL" => {
                Some(Self::AetherdivideSpiritLineupTrial)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum BattleTargetType {
    None = 0,
    Score = 1,
    Achievement = 2,
    Raid = 3,
    ChallengeScore = 4,
    Common = 5,
}
impl BattleTargetType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            BattleTargetType::None => "BATTLE_TARGET_TYPE_NONE",
            BattleTargetType::Score => "BATTLE_TARGET_TYPE_SCORE",
            BattleTargetType::Achievement => "BATTLE_TARGET_TYPE_ACHIEVEMENT",
            BattleTargetType::Raid => "BATTLE_TARGET_TYPE_RAID",
            BattleTargetType::ChallengeScore => "BATTLE_TARGET_TYPE_CHALLENGE_SCORE",
            BattleTargetType::Common => "BATTLE_TARGET_TYPE_COMMON",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "BATTLE_TARGET_TYPE_NONE" => Some(Self::None),
            "BATTLE_TARGET_TYPE_SCORE" => Some(Self::Score),
            "BATTLE_TARGET_TYPE_ACHIEVEMENT" => Some(Self::Achievement),
            "BATTLE_TARGET_TYPE_RAID" => Some(Self::Raid),
            "BATTLE_TARGET_TYPE_CHALLENGE_SCORE" => Some(Self::ChallengeScore),
            "BATTLE_TARGET_TYPE_COMMON" => Some(Self::Common),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum DeathSource {
    Unknown = 0,
    KilledByOthers = 1,
    KilledBySelf = 2,
    Escape = 3,
}
impl DeathSource {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            DeathSource::Unknown => "UNKNOWN",
            DeathSource::KilledByOthers => "KILLED_BY_OTHERS",
            DeathSource::KilledBySelf => "KILLED_BY_SELF",
            DeathSource::Escape => "ESCAPE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "UNKNOWN" => Some(Self::Unknown),
            "KILLED_BY_OTHERS" => Some(Self::KilledByOthers),
            "KILLED_BY_SELF" => Some(Self::KilledBySelf),
            "ESCAPE" => Some(Self::Escape),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum BattleTag {
    TagNone = 0,
    TagHideNpcMonster = 1,
}
impl BattleTag {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            BattleTag::TagNone => "TAG_NONE",
            BattleTag::TagHideNpcMonster => "TAG_HIDE_NPC_MONSTER",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "TAG_NONE" => Some(Self::TagNone),
            "TAG_HIDE_NPC_MONSTER" => Some(Self::TagHideNpcMonster),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Febapkbodjg {
    NormalCreate = 0,
    FormChange = 1,
}
impl Febapkbodjg {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Febapkbodjg::NormalCreate => "NORMAL_CREATE",
            Febapkbodjg::FormChange => "FORM_CHANGE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "NORMAL_CREATE" => Some(Self::NormalCreate),
            "FORM_CHANGE" => Some(Self::FormChange),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum BattleEndReason {
    None = 0,
    AllDie = 1,
    TurnLimit = 2,
}
impl BattleEndReason {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            BattleEndReason::None => "BATTLE_END_REASON_NONE",
            BattleEndReason::AllDie => "BATTLE_END_REASON_ALL_DIE",
            BattleEndReason::TurnLimit => "BATTLE_END_REASON_TURN_LIMIT",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "BATTLE_END_REASON_NONE" => Some(Self::None),
            "BATTLE_END_REASON_ALL_DIE" => Some(Self::AllDie),
            "BATTLE_END_REASON_TURN_LIMIT" => Some(Self::TurnLimit),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum BattleStaticticEventType {
    BattleStaticticEventNone = 0,
    BattleStaticticEventTreasureDungeonAddExplore = 1,
    BattleStaticticEventTreasureDungeonOpenGrid = 2,
    BattleStaticticEventTreasureDungeonPickupItem = 3,
    BattleStaticticEventTreasureDungeonUseBuff = 4,
    BattleStaticticEventTelevisionActivityUpdateMazeBuffLayer = 5,
}
impl BattleStaticticEventType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            BattleStaticticEventType::BattleStaticticEventNone => {
                "BATTLE_STATICTIC_EVENT_NONE"
            }
            BattleStaticticEventType::BattleStaticticEventTreasureDungeonAddExplore => {
                "BATTLE_STATICTIC_EVENT_TREASURE_DUNGEON_ADD_EXPLORE"
            }
            BattleStaticticEventType::BattleStaticticEventTreasureDungeonOpenGrid => {
                "BATTLE_STATICTIC_EVENT_TREASURE_DUNGEON_OPEN_GRID"
            }
            BattleStaticticEventType::BattleStaticticEventTreasureDungeonPickupItem => {
                "BATTLE_STATICTIC_EVENT_TREASURE_DUNGEON_PICKUP_ITEM"
            }
            BattleStaticticEventType::BattleStaticticEventTreasureDungeonUseBuff => {
                "BATTLE_STATICTIC_EVENT_TREASURE_DUNGEON_USE_BUFF"
            }
            BattleStaticticEventType::BattleStaticticEventTelevisionActivityUpdateMazeBuffLayer => {
                "BATTLE_STATICTIC_EVENT_TELEVISION_ACTIVITY_UPDATE_MAZE_BUFF_LAYER"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "BATTLE_STATICTIC_EVENT_NONE" => Some(Self::BattleStaticticEventNone),
            "BATTLE_STATICTIC_EVENT_TREASURE_DUNGEON_ADD_EXPLORE" => {
                Some(Self::BattleStaticticEventTreasureDungeonAddExplore)
            }
            "BATTLE_STATICTIC_EVENT_TREASURE_DUNGEON_OPEN_GRID" => {
                Some(Self::BattleStaticticEventTreasureDungeonOpenGrid)
            }
            "BATTLE_STATICTIC_EVENT_TREASURE_DUNGEON_PICKUP_ITEM" => {
                Some(Self::BattleStaticticEventTreasureDungeonPickupItem)
            }
            "BATTLE_STATICTIC_EVENT_TREASURE_DUNGEON_USE_BUFF" => {
                Some(Self::BattleStaticticEventTreasureDungeonUseBuff)
            }
            "BATTLE_STATICTIC_EVENT_TELEVISION_ACTIVITY_UPDATE_MAZE_BUFF_LAYER" => {
                Some(Self::BattleStaticticEventTelevisionActivityUpdateMazeBuffLayer)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum BattleEndStatus {
    BattleEndNone = 0,
    BattleEndWin = 1,
    BattleEndLose = 2,
    BattleEndQuit = 3,
}
impl BattleEndStatus {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            BattleEndStatus::BattleEndNone => "BATTLE_END_NONE",
            BattleEndStatus::BattleEndWin => "BATTLE_END_WIN",
            BattleEndStatus::BattleEndLose => "BATTLE_END_LOSE",
            BattleEndStatus::BattleEndQuit => "BATTLE_END_QUIT",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "BATTLE_END_NONE" => Some(Self::BattleEndNone),
            "BATTLE_END_WIN" => Some(Self::BattleEndWin),
            "BATTLE_END_LOSE" => Some(Self::BattleEndLose),
            "BATTLE_END_QUIT" => Some(Self::BattleEndQuit),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Retcode {
    RetSucc = 0,
    RetFail = 1,
    RetServerInternalError = 2,
    RetTimeout = 3,
    RetRepeatedReq = 4,
    RetReqParaInvalid = 5,
    RetPlayerDataError = 6,
    RetPlayerClientPaused = 7,
    RetFuncCheckFailed = 8,
    RetFeatureSwitchClosed = 9,
    RetFreqOverLimit = 10,
    RetSystemBusy = 11,
    RetPlayerNotOnline = 12,
    RetRepeateLogin = 1000,
    RetRetryLogin = 1001,
    RetWaitLogin = 1002,
    RetNotInWhiteList = 1003,
    RetInBlackList = 1004,
    RetAccountVerifyError = 1005,
    RetAccountParaError = 1006,
    RetAntiAddictLogin = 1007,
    RetCheckSumError = 1008,
    RetReachMaxPlayerNum = 1009,
    RetAlreadyRegistered = 1010,
    RetGenderError = 1011,
    SetNicknameRetCallbackProcessing = 1012,
    RetInGmBindAccess = 1013,
    RetQuestRewardAlreadyTaken = 1100,
    RetQuestNotAccept = 1101,
    RetQuestNotFinish = 1102,
    RetQuestStatusError = 1103,
    RetAchievementLevelNotReach = 1104,
    RetAchievementLevelAlreadyTaken = 1105,
    RetAvatarNotExist = 1200,
    RetAvatarResExpNotEnough = 1201,
    RetAvatarExpReachPromotionLimit = 1202,
    RetAvatarReachMaxPromotion = 1203,
    RetSkilltreeConfigNotExist = 1204,
    RetSkilltreeAlreadyUnlock = 1205,
    RetSkilltreePreLocked = 1206,
    RetSkilltreeLevelNotMeet = 1207,
    RetSkilltreeRankNotMeet = 1208,
    RetAvatarDressNoEquipment = 1209,
    RetAvatarExpItemNotExist = 1210,
    RetSkilltreePointUnlock = 1211,
    RetSkilltreePointLevelUpgradeNotMatch = 1212,
    RetSkilltreePointLevelReachMax = 1213,
    RetWorldLevelNotMeet = 1214,
    RetPlayerLevelNotMeet = 1215,
    RetAvatarRankNotMatch = 1216,
    RetAvatarRankReachMax = 1217,
    RetHeroBasicTypeNotMatch = 1218,
    RetAvatarPromotionNotMeet = 1219,
    RetPromotionRewardConfigNotExist = 1220,
    RetPromotionRewardAlreadyTaken = 1221,
    RetAvatarSkinItemNotExist = 1222,
    RetAvatarSkinAlreadyDressed = 1223,
    RetAvatarNotDressSkin = 1224,
    RetAvatarSkinNotMatchAvatar = 1225,
    RetItemNotExist = 1300,
    RetItemCostNotEnough = 1301,
    RetItemCostTooMuch = 1302,
    RetItemNoCost = 1303,
    RetItemNotEnough = 1304,
    RetItemInvalid = 1305,
    RetItemConfigNotExist = 1306,
    RetScoinNotEnough = 1307,
    RetItemRewardExceedLimit = 1308,
    RetItemInvalidUse = 1309,
    RetItemUseConfigNotExist = 1310,
    RetRewardConfigNotExist = 1311,
    RetItemExceedLimit = 1312,
    RetItemCountInvalid = 1313,
    RetItemUseTargetTypeInvalid = 1314,
    RetItemUseSatietyFull = 1315,
    RetItemComposeNotExist = 1316,
    RetRelicComposeNotExist = 1317,
    RetItemCanNotSell = 1318,
    RetItemSellExceddLimit = 1319,
    RetItemNotInCostList = 1320,
    RetItemSpecialCostNotEnough = 1321,
    RetItemSpecialCostTooMuch = 1322,
    RetItemFormulaNotExist = 1323,
    RetItemAutoGiftOptionalNotExist = 1324,
    RetRelicComposeRelicInvalid = 1325,
    RetRelicComposeMainAffixIdInvalid = 1326,
    RetRelicComposeWrongFormulaType = 1327,
    RetRelicComposeRelicNotExist = 1328,
    RetRelicComposeBlackGoldCountInvalid = 1329,
    RetRelicComposeBlackGoldNotNeed = 1330,
    RetMonthCardCannotUse = 1331,
    RetItemRewardExceedDisappear = 1332,
    RetItemNeedRecycle = 1333,
    RetItemComposeExceedLimit = 1334,
    RetItemCanNotDestroy = 1335,
    RetItemAlreadyMark = 1336,
    RetItemMarkExceedLimit = 1337,
    RetItemNotMark = 1338,
    RetItenTurnFoodNotSet = 1339,
    RetItemTurnFoodAlreadySet = 1340,
    RetItemTurnFoodConsumeTypeError = 1341,
    RetItemTurnFoodSwitchAlreadyOpen = 1342,
    RetItemTurnFoodSwitchAlreadyClose = 1343,
    RetHcoinExchangeTooMuch = 1344,
    RetItemTurnFoodSceneTypeError = 1345,
    RetEquipmentAlreadyDressed = 1350,
    RetEquipmentNotExist = 1351,
    RetEquipmentReachLevelLimit = 1352,
    RetEquipmentConsumeSelf = 1353,
    RetEquipmentAlreadyLocked = 1354,
    RetEquipmentAlreadyUnlocked = 1355,
    RetEquipmentLocked = 1356,
    RetEquipmentSelectNumOverLimit = 1357,
    RetEquipmentRankUpMustConsumeSameTid = 1358,
    RetEquipmentPromotionReachMax = 1359,
    RetEquipmentRankUpReachMax = 1360,
    RetEquipmentLevelReachMax = 1361,
    RetEquipmentExceedLimit = 1362,
    RetRelicNotExist = 1363,
    RetRelicReachLevelLimit = 1364,
    RetRelicConsumeSelf = 1365,
    RetRelicAlreadyDressed = 1366,
    RetRelicLocked = 1367,
    RetRelicAlreadyLocked = 1368,
    RetRelicAlreadyUnlocked = 1369,
    RetRelicLevelIsNotZero = 1370,
    RetUniqueIdRepeated = 1371,
    RetEquipmentLevelNotMeet = 1372,
    RetEquipmentItemNotInCostList = 1373,
    RetEquipmentLevelGreaterThanOne = 1374,
    RetEquipmentAlreadyRanked = 1375,
    RetRelicExceedLimit = 1376,
    RetRelicAlreadyDiscarded = 1377,
    RetRelicAlreadyUndiscarded = 1378,
    RetEquipmentBatchLockTooFast = 1379,
    RetLineupInvalidIndex = 1400,
    RetLineupInvalidMemberPos = 1401,
    RetLineupSwapNotExist = 1402,
    RetLineupAvatarAlreadyIn = 1403,
    RetLineupCreateAvatarError = 1404,
    RetLineupAvatarInitError = 1405,
    RetLineupNotExist = 1406,
    RetLineupOnlyOneMember = 1407,
    RetLineupSameLeaderSlot = 1408,
    RetLineupNoLeaderSelect = 1409,
    RetLineupSwapSameSlot = 1410,
    RetLineupAvatarNotExist = 1411,
    RetLineupTrialAvatarCanNotQuit = 1412,
    RetLineupVirtualLineupPlaneNotMatch = 1413,
    RetLineupNotValidLeader = 1414,
    RetLineupSameIndex = 1415,
    RetLineupIsEmpty = 1416,
    RetLineupNameFormatError = 1417,
    RetLineupTypeNotMatch = 1418,
    RetLineupReplaceAllFailed = 1419,
    RetLineupNotAllowEdit = 1420,
    RetLineupAvatarIsAlive = 1421,
    RetLineupAssistHasOnlyMember = 1422,
    RetLineupAssistCannotSwitch = 1423,
    RetLineupAvatarTypeInvalid = 1424,
    RetLineupNameUtf8Error = 1425,
    RetLineupLeaderLock = 1426,
    RetLineupStoryLineNotMatch = 1427,
    RetLineupAvatarLock = 1428,
    RetLineupAvatarInvalid = 1429,
    RetLineupAvatarAlreadyInit = 1430,
    RetMailNotExist = 1700,
    RetMailRangeInvalid = 1701,
    RetMailMailIdInvalid = 1702,
    RetMailNoMailTakeAttachment = 1703,
    RetMailNoMailToDel = 1704,
    RetMailTypeInvalid = 1705,
    RetMailParaInvalid = 1706,
    RetMailAttachementInvalid = 1707,
    RetMailTicketInvalid = 1708,
    RetMailTicketRepeated = 1709,
    RetStageSettleError = 1800,
    RetStageConfigNotExist = 1801,
    RetStageNotFound = 1802,
    RetStageCocoonPropNotValid = 1804,
    RetStageCocoonWaveNotValid = 1805,
    RetStagePropIdNotEqual = 1806,
    RetStageCocoonWaveOver = 1807,
    RetStageWeekCocoonOverCnt = 1808,
    RetStageCocoonNotOpen = 1809,
    RetStageTrialNotOpen = 1810,
    RetStageFarmNotOpen = 1811,
    RetStageFarmTypeError = 1812,
    RetChapterLock = 1900,
    RetChapterChallengeNumNotEnough = 1901,
    RetChapterRewardIdNotExist = 1902,
    RetChapterRewardAlreadyTaken = 1903,
    RetBattleStageNotMatch = 2000,
    RetInBattleNow = 2001,
    RetBattleCheat = 2002,
    RetBattleFail = 2003,
    RetBattleNoLineup = 2004,
    RetBattleLineupEmpty = 2005,
    RetBattleVersionNotMatch = 2006,
    RetBattleQuitByServer = 2007,
    RetInBattleCheck = 2008,
    RetBattleCheckNeedRetry = 2009,
    RetBattleCostTimeCheckFail = 2010,
    RetLackExchangeStaminaTimes = 2100,
    RetLackStamina = 2101,
    RetStaminaFull = 2102,
    RetAuthkeySignTypeError = 2103,
    RetAuthkeySignVerError = 2104,
    RetNicknameFormatError = 2105,
    RetSensitiveWords = 2106,
    RetLevelRewardHasTaken = 2107,
    RetLevelRewardLevelError = 2108,
    RetLanguageInvalid = 2109,
    RetNicknameInCd = 2110,
    RetGameplayBirthdayInvalid = 2111,
    RetGameplayBirthdayAlreadySet = 2112,
    RetNicknameUtf8Error = 2113,
    RetNicknameDigitLimitError = 2114,
    RetSensitiveWordsPlatformError = 2115,
    RetPlayerSettingTypeInvalid = 2116,
    RetMazeLackTicket = 2201,
    RetMazeNotUnlock = 2202,
    RetMazeNoAbility = 2204,
    RetMazeNoPlane = 2205,
    RetMazeMapNotExist = 2207,
    RetMazeMpNotEnough = 2213,
    RetSpringNotEnable = 2214,
    RetSpringTooFar = 2216,
    RetNotInMaze = 2218,
    RetMazeTimeOfDayTypeError = 2223,
    RetSceneTransferLockedByTask = 2224,
    RetPlotNotUnlock = 2300,
    RetMissionNotExist = 2400,
    RetMissionAlreadyDone = 2401,
    RetDailyTaskNotFinish = 2402,
    RetDailyTaskRewardHasTaken = 2403,
    RetMissionNotFinish = 2404,
    RetMissionNotDoing = 2405,
    RetMissionFinishWayNotMatch = 2406,
    RetMissionSceneNotMatch = 2407,
    RetMissionCustomValueNotValid = 2408,
    RetMissionSubMissionNotMatch = 2409,
    RetAdventureMapNotExist = 2500,
    RetSceneEntityNotExist = 2600,
    RetNotInScene = 2601,
    RetSceneMonsterNotExist = 2602,
    RetInteractConfigNotExist = 2603,
    RetUnsupportedPropState = 2604,
    RetSceneEntryIdNotMatch = 2605,
    RetSceneEntityMoveCheckFailed = 2606,
    RetAssistMonsterCountLimit = 2607,
    RetSceneUseSkillFail = 2608,
    RetPropIsHidden = 2609,
    RetLoadingSuccAlready = 2610,
    RetSceneEntityTypeInvalid = 2611,
    RetInteractTypeInvalid = 2612,
    RetInteractNotInRegion = 2613,
    RetInteractSubTypeInvalid = 2614,
    RetNotLeaderEntity = 2615,
    RetMonsterIsNotFarmElement = 2616,
    RetMonsterConfigNotExist = 2617,
    RetAvatarHpAlreadyFull = 2618,
    RetCurInteractEntityNotMatch = 2619,
    RetPlaneTypeNotAllow = 2620,
    RetGroupNotExist = 2621,
    RetGroupSaveDataInCd = 2622,
    RetGroupSaveLenghReachMax = 2623,
    RetRecentElementNotExist = 2624,
    RetRecentElementStageNotMatch = 2625,
    RetScenePositionVersionNotMatch = 2626,
    RetGameplayCounterNotExist = 2627,
    RetGameplayCounterNotEnough = 2628,
    RetGroupStateNotMatch = 2629,
    RetSceneEntityPosNotMatch = 2630,
    RetGroupStateCustomSaveDataOff = 2631,
    RetBuyTimesLimit = 2700,
    RetBuyLimitType = 2701,
    RetShopNotOpen = 2702,
    RetGoodsNotOpen = 2703,
    RetCityLevelRewardTaken = 2704,
    RetCityLevelNotMeet = 2705,
    RetSingleBuyLimit = 2706,
    RetTutorialNotUnlock = 2751,
    RetTutorialUnlockAlready = 2752,
    RetTutorialFinishAlready = 2753,
    RetTutorialPreNotUnlock = 2754,
    RetTutorialPlayerLevelNotMatch = 2755,
    RetTutorialTutorialNotFound = 2756,
    RetChallengeNotExist = 2801,
    RetChallengeNotUnlock = 2802,
    RetChallengeAlready = 2803,
    RetChallengeLineupEditForbidden = 2804,
    RetChallengeLineupEmpty = 2805,
    RetChallengeNotDoing = 2806,
    RetChallengeNotFinish = 2807,
    RetChallengeTargetNotFinish = 2808,
    RetChallengeTargetRewardTaken = 2809,
    RetChallengeTimeNotValid = 2810,
    RetChallengeStarsCountNotMeet = 2811,
    RetChallengeStarsRewardTaken = 2812,
    RetChallengeStarsNotExist = 2813,
    RetChallengeCurSceneNotEntryFloor = 2814,
    RetBasicTypeAlready = 2850,
    RetNoBasicType = 2851,
    RetNotChooseBasicType = 2852,
    RetNotFuncClose = 2853,
    RetNotChooseGender = 2854,
    RetRogueStatusNotMatch = 2901,
    RetRogueSelectBuffNotExist = 2902,
    RetRogueCoinNotEnough = 2903,
    RetRogueStaminaNotEnough = 2904,
    RetRogueAppraisalCountNotEnough = 2905,
    RetRoguePropAlreadyUsed = 2906,
    RetRogueRecordAlreadySaved = 2907,
    RetRogueRollBuffMaxCount = 2908,
    RetRoguePickAvatarInvalid = 2909,
    RetRogueQuestExpire = 2910,
    RetRogueQuestRewardAlready = 2911,
    RetRogueReviveCountNotEnough = 2912,
    RetRogueAreaInvalid = 2913,
    RetRogueScoreRewardPoolInvalid = 2914,
    RetRogueScoreRewardRowInvalid = 2915,
    RetRogueAeonLevelNotMeet = 2916,
    RetRogueAeonLevelRewardAlreadyTaken = 2917,
    RetRogueAeonConfigNotExist = 2918,
    RetRogueTrialAvatarInvalid = 2919,
    RetRogueHandbookRewardAlreadyTaken = 2920,
    RetRogueRoomTypeNotMatch = 2921,
    RetRogueShopGoodNotFound = 2922,
    RetRogueShopGoodAlreadyBought = 2923,
    RetRogueShopGoodAlreadyOwn = 2924,
    RetRogueShopMiracleNotExist = 2925,
    RetRogueShopNotExist = 2926,
    RetRogueShopCannotRefresh = 2927,
    RetMissionEventConfigNotExist = 2951,
    RetMissionEventNotClient = 2952,
    RetMissionEventFinished = 2953,
    RetMissionEventDoing = 2954,
    RetHasChallengeMissionEvent = 2955,
    RetNotChallengeMissionEvent = 2956,
    RetGachaIdNotExist = 3001,
    RetGachaNumInvalid = 3002,
    RetGachaFirstGachaMustOne = 3003,
    RetGachaReqDuplicated = 3004,
    RetGachaNotInSchedule = 3005,
    RetGachaNewbieClose = 3006,
    RetGachaTodayLimited = 3007,
    RetGachaNotSupport = 3008,
    RetGachaCeilingNotEnough = 3009,
    RetGachaCeilingClose = 3010,
    RetNotInRaid = 3101,
    RetRaidDoing = 3102,
    RetNotProp = 3103,
    RetRaidIdNotMatch = 3104,
    RetRaidRestartNotMatch = 3105,
    RetRaidLimit = 3106,
    RetRaidAvatarListEmpty = 3107,
    RetRaidAvatarNotExist = 3108,
    RetChallengeRaidRewardAlready = 3109,
    RetChallengeRaidScoreNotReach = 3110,
    RetChallengeRaidNotOpen = 3111,
    RetRaidFinished = 3112,
    RetRaidWorldLevelNotLock = 3113,
    RetRaidCannotUseAssist = 3114,
    RetRaidAvatarNotMatch = 3115,
    RetRaidCanNotSave = 3116,
    RetRaidNoSave = 3117,
    RetActivityRaidNotOpen = 3118,
    RetRaidAvatarCaptainNotExist = 3119,
    RetRaidStoryLineNotMatch = 3120,
    RetTalkEventAlreadyTaken = 3151,
    RetNpcAlreadyMeet = 3152,
    RetNpcNotInConfig = 3153,
    RetDialogueGroupDismatch = 3154,
    RetDialogueEventInvalid = 3155,
    RetTalkEventTakeProtoNotMatch = 3156,
    RetTalkEventNotValid = 3157,
    RetExpeditionConfigNotExist = 3201,
    RetExpeditionRewardConfigNotExist = 3202,
    RetExpeditionNotUnlocked = 3203,
    RetExpeditionAlreadyAccepted = 3204,
    RetExpeditionRepeatedAvatar = 3205,
    RetAvatarAlreadyDispatched = 3206,
    RetExpeditionNotAccepted = 3207,
    RetExpeditionNotFinish = 3208,
    RetExpeditionAlreadyFinish = 3209,
    RetExpeditionTeamCountLimit = 3210,
    RetExpeditionAvatarNumNotMatch = 3211,
    RetExpeditionNotOpen = 3212,
    RetExpeditionFriendAvatarNotValid = 3213,
    RetExpeditionNotPublished = 3214,
    RetLoginActivityHasTaken = 3301,
    RetLoginActivityDaysLack = 3302,
    RetTrialActivityRewardAlreadyTake = 3303,
    RetTrialActivityStageNotFinish = 3304,
    RetMonsterResearchActivityHasTaken = 3305,
    RetMonsterResearchActivityMaterialNotSubmitted = 3306,
    RetMonsterResearchActivityMaterialAlreadySubmitted = 3307,
    RetFantasticStoryActivityStoryError = 3308,
    RetFantasticStoryActivityStoryNotOpen = 3309,
    RetFantasticStoryActivityBattleError = 3310,
    RetFantasticStoryActivityBattleNotOpen = 3311,
    RetFantasticStoryActivityBattleAvatarError = 3312,
    RetFantasticStoryActivityBattleBuffError = 3313,
    RetFantasticStoryActivityPreBattleScoreNotEnough = 3314,
    RetTrialActivityAlreadyInTrialActivity = 3315,
    RetMessageConfigNotExist = 3501,
    RetMessageSectionNotTake = 3502,
    RetMessageGroupNotTake = 3503,
    RetMessageSectionIdNotMatch = 3504,
    RetMessageSectionCanNotFinish = 3505,
    RetMessageItemCanNotFinish = 3506,
    RetMessageItemRaidCanNotFinish = 3507,
    RetFriendAlreadyIsFriend = 3601,
    RetFriendIsNotFriend = 3602,
    RetFriendApplyExpire = 3603,
    RetFriendInBlacklist = 3604,
    RetFriendNotInBlacklist = 3605,
    RetFriendNumberLimit = 3606,
    RetFriendBlacklistNumberLimit = 3607,
    RetFriendDailyApplyLimit = 3608,
    RetFriendInHandleLimit = 3609,
    RetFriendApplyInCd = 3610,
    RetFriendRemarkNameFormatError = 3611,
    RetFriendPlayerNotFound = 3612,
    RetFriendInTargetBlacklist = 3613,
    RetFriendTargetNumberLimit = 3614,
    RetAssistQueryTooFast = 3615,
    RetAssistNotExist = 3616,
    RetAssistUsedAlready = 3617,
    RetFriendReportReasonFormatError = 3618,
    RetFriendReportSensitiveWords = 3619,
    RetAssistUsedTimesOver = 3620,
    RetAssistQuitAlready = 3621,
    RetAssistAvatarInLineup = 3622,
    RetAssistNoReward = 3623,
    RetFriendSearchNumLimit = 3624,
    RetFriendSearchInCd = 3625,
    RetFriendRemarkNameUtf8Error = 3626,
    RetFriendReportReasonUtf8Error = 3627,
    RetAssistSetAlready = 3628,
    RetFriendTargetForbidOtherApply = 3629,
    RetFriendMarkedCntMax = 3630,
    RetFriendMarkedAlready = 3631,
    RetFriendNotMarked = 3632,
    RetFriendChallengeLineupRecommendInCd = 3633,
    RetViewPlayerCardInCd = 3634,
    RetViewPlayerBattleRecordInCd = 3635,
    RetPlayerBoardHeadIconNotExist = 3701,
    RetPlayerBoardHeadIconLocked = 3702,
    RetPlayerBoardHeadIconAlreadyUnlocked = 3703,
    RetPlayerBoardDisplayAvatarNotExist = 3704,
    RetPlayerBoardDisplayAvatarExceedLimit = 3705,
    RetPlayerBoardDisplayRepeatedAvatar = 3706,
    RetPlayerBoardDisplayAvatarSamePos = 3707,
    RetPlayerBoardDisplayAvatarLocked = 3708,
    RetSignatureLengthExceedLimit = 3709,
    RetSignatureSensitiveWords = 3710,
    RetPlayerBoardAssistAvatarNotExist = 3712,
    RetPlayerBoardAssistAvatarLocked = 3713,
    RetSignatureUtf8Error = 3714,
    RetPlayerBoardAssistAvatarCntError = 3715,
    RetBattlePassTierNotValid = 3801,
    RetBattlePassLevelNotMeet = 3802,
    RetBattlePassRewardTakeAlready = 3803,
    RetBattlePassNotPremium = 3804,
    RetBattlePassNotDoing = 3805,
    RetBattlePassLevelInvalid = 3806,
    RetBattlePassNotUnlock = 3807,
    RetBattlePassNoReward = 3808,
    RetBattlePassQuestNotValid = 3809,
    RetBattlePassNotChooseOptional = 3810,
    RetBattlePassNotTakeReward = 3811,
    RetBattlePassOptionalNotValid = 3812,
    RetBattlePassBuyAlready = 3813,
    RetBattlePassNearEnd = 3814,
    RetMusicLocked = 3901,
    RetMusicNotExist = 3902,
    RetMusicUnlockFailed = 3903,
    RetPunkLordLackSummonTimes = 4001,
    RetPunkLordAttackingMonsterLimit = 4002,
    RetPunkLordMonsterNotExist = 4003,
    RetPunkLordMonsterAlreadyShared = 4004,
    RetPunkLordMonsterExpired = 4005,
    RetPunkLordSelfMonsterAttackLimit = 4006,
    RetPunkLordLackSupportTimes = 4007,
    RetPunkLordMonsterAlreadyKilled = 4008,
    RetPunkLordMonsterAttackerLimit = 4009,
    RetPunkLordWorldLevleNotValid = 4010,
    RetPunkLordRewardLevleNotExist = 4011,
    RetPunkLordPointNotMeet = 4012,
    RetPunkLordInAttacking = 4013,
    RetPunkLordOperationInCd = 4014,
    RetPunkLordRewardAlreadyTaken = 4015,
    RetPunkLordOverBonusRewardLimit = 4016,
    RetPunkLordNotInSchedule = 4017,
    RetPunkLordMonsterNotAttacked = 4018,
    RetPunkLordMonsterNotKilled = 4019,
    RetPunkLordMonsterKilledScoreAlreadyTake = 4020,
    RetPunkLordRewardLevleAlreadyTake = 4021,
    RetDailyActiveLevelInvalid = 4101,
    RetDailyActiveLevelRewardAlreadyTaken = 4102,
    RetDailyActiveLevelApNotEnough = 4103,
    RetDailyMeetPam = 4201,
    RetReplayIdNotMatch = 4251,
    RetReplayReqNotValid = 4252,
    RetFightActivityDifficultyLevelNotPassed = 4301,
    RetFightActivityDifficultyLevelRewardAlreadyTake = 4302,
    RetFightActivityStageNotOpen = 4303,
    RetTrainVisitorVisitorNotExist = 4351,
    RetTrainVisitorBehaviorNotExist = 4352,
    RetTrainVisitorBehaviorFinished = 4353,
    RetTrainVisitorAllBehaviorRewardTaken = 4354,
    RetTrainVisitorGetOnMissionNotFinish = 4355,
    RetTrainVisitorNotGetOff = 4356,
    RetTextJoinUnknowIsOverride = 4401,
    RetTextJoinIdNotExist = 4402,
    RetTextJoinCanNotOverride = 4403,
    RetTextJoinItemIdError = 4404,
    RetTextJoinSensitiveCheckError = 4405,
    RetTextJoinMustOverride = 4406,
    RetTextJoinTextEmpty = 4407,
    RetTextJoinTextFormatError = 4408,
    RetTextJoinTextUtf8Error = 4409,
    RetTextJoinBatchReqIdRepeat = 4410,
    RetTextJoinTypeNotSupportBatchReq = 4411,
    RetTextJoinAvatarIdNotExist = 4412,
    RetTextJoinUnknowType = 4413,
    RetPamMissionMissionIdError = 4451,
    RetPamMissionMissionExpire = 4452,
    RetChatTypeNotExist = 4501,
    RetMsgTypeNotExist = 4502,
    RetChatNoTargetUid = 4503,
    RetChatMsgEmpty = 4504,
    RetChatMsgExceedLimit = 4505,
    RetChatMsgSensitiveCheckError = 4506,
    RetChatMsgUtf8Error = 4507,
    RetChatForbidSwitchOpen = 4508,
    RetChatForbid = 4509,
    RetChatMsgIncludeSpecialStr = 4510,
    RetChatMsgEmojiNotExist = 4511,
    RetChatMsgEmojiGenderNotMatch = 4512,
    RetChatMsgEmojiNotMarked = 4513,
    RetChatMsgEmojiAlreadyMarked = 4514,
    RetChatMsgEmojiMarkedMaxLimit = 4515,
    RetBoxingClubChallengeNotOpen = 4601,
    RetMuseumNotOpen = 4651,
    RetMuseumTurnCntNotMatch = 4652,
    RetMuseumPhaseNotReach = 4653,
    RetMuseumUnknowStuff = 4654,
    RetMuseumUnknowArea = 4655,
    RetMuseumUnknowPos = 4656,
    RetMuseumStuffAlreadyInArea = 4657,
    RetMuseumStuffNotInArea = 4658,
    RetMuseumGetNpcRepeat = 4659,
    RetMuseumGetNpcUnlock = 4660,
    RetMuseumGetNpcNotEnough = 4661,
    RetMuseumChangeStuffAreaError = 4662,
    RetMuseumNotInit = 4663,
    RetMuseumEventError = 4664,
    RetMuseumUnknowChooseEventId = 4665,
    RetMuseumEventOrderNotMatch = 4666,
    RetMuseumEventPhaseNotUnlock = 4667,
    RetMuseumEventMissionNotFound = 4668,
    RetMuseumAreaLevelUpAlready = 4669,
    RetMuseumStuffAlreadyUsed = 4670,
    RetMuseumEventRoundNotUnlock = 4671,
    RetMuseumStuffInArea = 4672,
    RetMuseumStuffDispatch = 4673,
    RetMuseumIsEnd = 4674,
    RetMuseumStuffLeaving = 4675,
    RetMuseumEventMissionNotFinish = 4678,
    RetMuseumCollectRewardNotExist = 4679,
    RetMuseumCollectRewardAlreadyTaken = 4680,
    RetMuseumAcceptMissionMaxLimit = 4681,
    RetRogueChallengeNotOpen = 4701,
    RetRogueChallengeAssisRefreshLimit = 4702,
    RetAlleyNotInit = 4721,
    RetAlleyNotOpen = 4722,
    RetAlleyMapNotExist = 4724,
    RetAlleyEmptyPosList = 4725,
    RetAlleyLinePosInvalid = 4726,
    RetAlleyShopNotUnlock = 4727,
    RetAlleyDepotFull = 4728,
    RetAlleyShopNotInclude = 4729,
    RetAlleyEventNotUnlock = 4730,
    RetAlleyEventNotRefresh = 4731,
    RetAlleyEventStateDoing = 4732,
    RetAlleyEventStateFinish = 4733,
    RetAlleyEventError = 4734,
    RetAlleyRewardLevelError = 4735,
    RetAlleyRewardPrestigeNotEnough = 4736,
    RetAlleyShipEmpty = 4737,
    RetAlleyShipIdDismatch = 4738,
    RetAlleyShipNotExist = 4739,
    RetAlleyShipNotUnlock = 4740,
    RetAlleyGoodsNotExist = 4741,
    RetAlleyGoodsNotUnlock = 4742,
    RetAlleyProfitNotPositive = 4743,
    RetAlleySpecialOrderDismatch = 4744,
    RetAlleyOrderGoodsOverLimit = 4745,
    RetAlleySpecialOrderConditionNotMeet = 4746,
    RetAlleyDepotSizeOverLimit = 4747,
    RetAlleyGoodsNotEnough = 4748,
    RetAlleyOrderIndexInvalid = 4749,
    RetAlleyRewardAlreadyTake = 4750,
    RetAlleyRewardNotExist = 4751,
    RetAlleyMainMissionNotDoing = 4752,
    RetAlleyCriticalEventNotFinish = 4753,
    RetAlleyShopGoodsNotValid = 4754,
    RetAlleySlashNotOpen = 4755,
    RetAlleyPlacingAnchorInvalid = 4756,
    RetAlleyPlacingGoodsIndexInvalid = 4757,
    RetAlleySaveMapTooQuick = 4758,
    RetAlleyMapNotLink = 4759,
    RetAlleyFundsNotLowerBase = 4760,
    RetAlleyEventNotFinish = 4761,
    RetAlleyNormalOrderNotMeet = 4762,
    RetPlayerReturnNotOpen = 4801,
    RetPlayerReturnIsSigned = 4802,
    RetPlayerReturnPointNotEnough = 4803,
    RetPlayerReturnConditionInvalid = 4804,
    RetPlayerReturnHasSigned = 4805,
    RetPlayerReturnRewardTaken = 4806,
    RetAetherDivideNoLineup = 4851,
    RetAetherDivideLineupInvalid = 4852,
    RetChatBubbleIdError = 4901,
    RetChatBubbleIdNotUnlock = 4902,
    RetPhoneThemeIdError = 4903,
    RetPhoneThemeIdNotUnlock = 4904,
    RetChatBubbleSelectIsCurrent = 4905,
    RetPhoneThemeSelectIsCurrent = 4906,
    RetChessRogueConfigNotFound = 4951,
    RetChessRogueConfigInvalid = 4952,
    RetChessRogueNoValidRoom = 4963,
    RetChessRogueNoCellInfo = 4964,
    RetChessRogueCellNotFinish = 4965,
    RetChessRogueCellIsLocked = 4966,
    RetChessRogueScheduleNotMatch = 4967,
    RetChessRogueStatusFail = 4968,
    RetChessRogueAreaNotExist = 4969,
    RetChessRogueLineupFail = 4970,
    RetChessRogueAeonFail = 4980,
    RetChessRogueEnterCellFail = 4981,
    RetChessRogueRollDiceFail = 4982,
    RetChessRogueDiceStatusFail = 4983,
    RetChessRogueDiceCntNotFull = 4984,
    RetChessRogueUnlock = 4985,
    RetChessRoguePickAvatarFail = 4986,
    RetChessRogueAvatarInvalid = 4987,
    RetChessRogueCellCanNotSelect = 4988,
    RetChessRogueDiceConfirmed = 4989,
    RetChessRogueNousDiceNotMatch = 4990,
    RetChessRogueNousDiceRarityFail = 4991,
    RetChessRogueNousDiceSurfaceDuplicate = 4992,
    RetChessRogueNotInRogue = 4993,
    RetChessRogueNousDiceBranchLimit = 4994,
    RetHeliobusNotOpen = 5101,
    RetHeliobusSnsPostNotUnlock = 5102,
    RetHeliobusSnsAlreadyRead = 5103,
    RetHeliobusSnsAlreadyLiked = 5104,
    RetHeliobusSnsAlreadyCommented = 5105,
    RetHeliobusSnsInMission = 5106,
    RetHeliobusSnsAlreadyPosted = 5107,
    RetHeliobusSnsNotDoingMission = 5108,
    RetHeliobusRewardLevelMax = 5109,
    RetHeliobusIncomeNotEnough = 5110,
    RetHeliobusSnsCommentNotUnlock = 5111,
    RetHeliobusChallengeNotUnlock = 5112,
    RetHeliobusChallengeIdError = 5113,
    RetHeliobusSkillNotUnlock = 5114,
    RetHeliobusAcceptPostMissionFail = 5115,
    RetHeliobusSkillNotSelected = 5116,
    RetHeliobusPlaneTypeInvalid = 5117,
    RetReddotParamInvalid = 5151,
    RetReddotActivityNotOpen = 5152,
    RetRogueEndlessActivityConfigError = 5201,
    RetRogueEndlessActivityNotOpen = 5202,
    RetRogueEndlessActivityOverBonusRewardLimit = 5203,
    RetRogueEndlessActivityScoreNotMeet = 5204,
    RetRogueEndlessActivityRewardLevleAlreadyTake = 5205,
    RetHeartDialScriptNotFound = 5251,
    RetHeartDialScriptEmotionTheSame = 5252,
    RetHeartDialScriptStepNotNormal = 5253,
    RetHeartDialScriptConditionNotMatch = 5254,
    RetHeartDialScriptSubmitItemNumNotMatch = 5255,
    RetHeartDialScriptSubmitItemIdNotMatch = 5256,
    RetHeartDialDialogueNotFound = 5257,
    RetHeartDialDialogueAlreadyPerformed = 5258,
    RetHeartDialNpcNotFound = 5259,
    RetHeartDialTraceConfigNotFound = 5260,
    RetHeartDialFloorTraceExist = 5261,
    RetHeartDialTraceFloorNotMatch = 5262,
    RetTravelBrochureConfigError = 5301,
    RetTravelBrochureParamInvalid = 5302,
    RetTravelBrochureLocked = 5303,
    RetTravelBrochureCannotOperate = 5304,
    RetTravelBrochureWorldIdNotMatch = 5305,
    RetTravelBrochureHasNoWorldBook = 5306,
    RetTravelBrochurePageFull = 5307,
    RetMapRotationNotInRegion = 5351,
    RetMapRotationRotaterAlreadyDeployed = 5352,
    RetMapRotationEnergyNotEnough = 5353,
    RetMapRotationEntityNotOnCurPose = 5354,
    RetMapRotationRotaterNotDeployed = 5355,
    RetMapRotationPoseRotaterMismatch = 5356,
    RetMapRotationRotaterNotRemovable = 5357,
    RetMapRotationRotaterDisposable = 5358,
    RetSpaceZooActivityCatNotFound = 5401,
    RetSpaceZooActivityCatParamInvalid = 5402,
    RetSpaceZooActivityCatItemNotEnough = 5403,
    RetSpaceZooActivityCatBagFull = 5404,
    RetSpaceZooActivityCatNotToMutate = 5405,
    RetSpaceZooActivityCatStateError = 5406,
    RetSpaceZooActivityCatCatteryLocked = 5407,
    RetSpaceZooActivityCatOutNow = 5408,
    RetSpaceZooActivityCatConfigNotFound = 5409,
    RetSpaceZooActivityCatFeatureNotFound = 5410,
    RetSpaceZooActivityCatAddCatError = 5411,
    RetSpaceZooActivityCatMoneyNotEnough = 5412,
    RetSpaceZooActivityCatCondNotMatch = 5413,
    RetStrongChallengeActivityStageCfgMiss = 5501,
    RetStrongChallengeActivityStageNotOpen = 5502,
    RetStrongChallengeActivityBuffError = 5503,
    RetRollShopNotFound = 5551,
    RetRollShopGroupEmpty = 5552,
    RetRollShopEmpty = 5553,
    RetRollShopGachaReqDuplicated = 5554,
    RetRollShopRandomError = 5555,
    RetRollShopGroupTypeNotFound = 5556,
    RetRollShopHasStoredRewardAlready = 5557,
    RetRollShopNoStoredReward = 5558,
    RetRollShopNotInValidScene = 5559,
    RetRollShopInvalidRollShopType = 5560,
    RetActivityRaidCollectionPrevNotFinish = 5601,
    RetOfferingNotUnlock = 5651,
    RetOfferingLevelNotUnlock = 5652,
    RetOfferingReachMaxLevel = 5653,
    RetOfferingItemNotEnough = 5654,
    RetOfferingLongtailNotOpen = 5655,
    RetOfferingRewardCondition = 5656,
    RetDrinkMakerChatInvalid = 5701,
    RetDrinkMakerParamInvalid = 5702,
    RetDrinkMakerParamNotUnlock = 5703,
    RetDrinkMakerConfigNotFound = 5704,
    RetDrinkMakerNotLastChat = 5705,
    RetDrinkMakerDayAndFreePhaseNotOpen = 5706,
    RetMonopolyNotOpen = 5717,
    RetMonopolyConfigError = 5751,
    RetMonopolyDiceNotEnough = 5752,
    RetMonopolyCurCellNotFinish = 5753,
    RetMonopolyCoinNotEnough = 5754,
    RetMonopolyCellWaitPending = 5755,
    RetMonopolyCellStateError = 5756,
    RetMonopolyCellContentError = 5757,
    RetMonopolyItemNotEnough = 5758,
    RetMonopolyCellContentCannotGiveup = 5759,
    RetMonopolyAssetLevelInvalid = 5760,
    RetMonopolyTurnNotFinish = 5761,
    RetMonopolyGuideNotFinish = 5762,
    RetMonopolyRaffleRewardReissued = 5763,
    RetMonopolyNoGameActive = 5764,
    RetMonopolyGameRatioNotIncreasable = 5771,
    RetMonopolyGameRatioMax = 5772,
    RetMonopolyGameTargetRatioInvalid = 5773,
    RetMonopolyGameBingoFlipPosInvalid = 5774,
    RetMonopolyGameGuessAlreadyChoose = 5775,
    RetMonopolyGameGuessChooseInvalid = 5776,
    RetMonopolyGameGuessInformationAlreadyBought = 5777,
    RetMonopolyGameRaiseRatioNotUnlock = 5778,
    RetMonopolyFriendNotSynced = 5779,
    RetMonopolyGetFriendRankingListInCd = 5785,
    RetMonopolyLikeTargetNotFriend = 5786,
    RetMonopolyDailyAlreadyLiked = 5787,
    RetMonopolySocialEventStatusNotMatch = 5788,
    RetMonopolySocialEventServerCacheNotExist = 5789,
    RetMonopolyActivityIdNotMatch = 5790,
    RetMonopolyRafflePoolNotExist = 5791,
    RetMonopolyRafflePoolTimeNotMatch = 5792,
    RetMonopolyRafflePoolPhaseNotMeet = 5793,
    RetMonopolyRafflePoolShowTimeNotMeet = 5794,
    RetMonopolyRaffleTicketNotFound = 5795,
    RetMonopolyRaffleTicketTimeNotMeet = 5796,
    RetMonopolyRaffleTicketRewardAlreadyTaken = 5797,
    RetMonopolyRafflePoolNotInRaffleTime = 5798,
    RetMonopolyMbtiReportRewardAlreadyTaken = 5799,
    RetEvolveBuildLevelGaming = 5800,
    RetEveolveBuildLevelBanRandom = 5801,
    RetEvolveBuildFirstRewardAlreadyTaken = 5802,
    RetEvolveBuildLevelUnfinish = 5803,
    RetEvolveBuildShopAbilityMaxLevel = 5804,
    RetEvolveBuildShopAbilityMinLevel = 5805,
    RetEvolveBuildShopAbilityNotGet = 5806,
    RetEvolveBuildLevelLock = 5807,
    RetEvolveBuildExpNotEnough = 5808,
    RetEvolveBuildShopAbilityLevelError = 5809,
    RetEvolveBuildActivityNotOpen = 5810,
    RetEvolveBuildShopAbilityEmpty = 5811,
    RetEvolveBuildLevelNotStart = 5812,
    RetEvolveBuildShopLock = 5813,
    RetEvolveBuildRewardLock = 5814,
    RetEvolveBuildRewardLevelMax = 5815,
    RetEvolveBuildRewardAlreadyAllTaken = 5816,
    RetClockParkConfigError = 5851,
    RetClockParkEffectError = 5852,
    RetClockParkScriptAlreadyUnlock = 5853,
    RetClockParkScriptUnlockConditionNotMeet = 5854,
    RetClockParkTalentAlreadyUnlock = 5855,
    RetClockParkScriptLocked = 5856,
    RetClockParkHasOngoingScript = 5857,
    RetClockParkNoOngoingScript = 5858,
    RetClockParkDicePlacementError = 5859,
    RetClockParkMismatchStatus = 5860,
    RetClockParkNoBuff = 5861,
    RetClockParkSlotMachineGachaReqDuplicated = 5862,
    RetClockParkSlotMachineCostNotEnough = 5863,
    RetClockParkSlotMachineGachaCntExceedLimit = 5864,
    RetClockParkNotOpen = 5865,
}
impl Retcode {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Retcode::RetSucc => "RET_SUCC",
            Retcode::RetFail => "RET_FAIL",
            Retcode::RetServerInternalError => "RET_SERVER_INTERNAL_ERROR",
            Retcode::RetTimeout => "RET_TIMEOUT",
            Retcode::RetRepeatedReq => "RET_REPEATED_REQ",
            Retcode::RetReqParaInvalid => "RET_REQ_PARA_INVALID",
            Retcode::RetPlayerDataError => "RET_PLAYER_DATA_ERROR",
            Retcode::RetPlayerClientPaused => "RET_PLAYER_CLIENT_PAUSED",
            Retcode::RetFuncCheckFailed => "RET_FUNC_CHECK_FAILED",
            Retcode::RetFeatureSwitchClosed => "RET_FEATURE_SWITCH_CLOSED",
            Retcode::RetFreqOverLimit => "RET_FREQ_OVER_LIMIT",
            Retcode::RetSystemBusy => "RET_SYSTEM_BUSY",
            Retcode::RetPlayerNotOnline => "RET_PLAYER_NOT_ONLINE",
            Retcode::RetRepeateLogin => "RET_REPEATE_LOGIN",
            Retcode::RetRetryLogin => "RET_RETRY_LOGIN",
            Retcode::RetWaitLogin => "RET_WAIT_LOGIN",
            Retcode::RetNotInWhiteList => "RET_NOT_IN_WHITE_LIST",
            Retcode::RetInBlackList => "RET_IN_BLACK_LIST",
            Retcode::RetAccountVerifyError => "RET_ACCOUNT_VERIFY_ERROR",
            Retcode::RetAccountParaError => "RET_ACCOUNT_PARA_ERROR",
            Retcode::RetAntiAddictLogin => "RET_ANTI_ADDICT_LOGIN",
            Retcode::RetCheckSumError => "RET_CHECK_SUM_ERROR",
            Retcode::RetReachMaxPlayerNum => "RET_REACH_MAX_PLAYER_NUM",
            Retcode::RetAlreadyRegistered => "RET_ALREADY_REGISTERED",
            Retcode::RetGenderError => "RET_GENDER_ERROR",
            Retcode::SetNicknameRetCallbackProcessing => {
                "SET_NICKNAME_RET_CALLBACK_PROCESSING"
            }
            Retcode::RetInGmBindAccess => "RET_IN_GM_BIND_ACCESS",
            Retcode::RetQuestRewardAlreadyTaken => "RET_QUEST_REWARD_ALREADY_TAKEN",
            Retcode::RetQuestNotAccept => "RET_QUEST_NOT_ACCEPT",
            Retcode::RetQuestNotFinish => "RET_QUEST_NOT_FINISH",
            Retcode::RetQuestStatusError => "RET_QUEST_STATUS_ERROR",
            Retcode::RetAchievementLevelNotReach => "RET_ACHIEVEMENT_LEVEL_NOT_REACH",
            Retcode::RetAchievementLevelAlreadyTaken => {
                "RET_ACHIEVEMENT_LEVEL_ALREADY_TAKEN"
            }
            Retcode::RetAvatarNotExist => "RET_AVATAR_NOT_EXIST",
            Retcode::RetAvatarResExpNotEnough => "RET_AVATAR_RES_EXP_NOT_ENOUGH",
            Retcode::RetAvatarExpReachPromotionLimit => {
                "RET_AVATAR_EXP_REACH_PROMOTION_LIMIT"
            }
            Retcode::RetAvatarReachMaxPromotion => "RET_AVATAR_REACH_MAX_PROMOTION",
            Retcode::RetSkilltreeConfigNotExist => "RET_SKILLTREE_CONFIG_NOT_EXIST",
            Retcode::RetSkilltreeAlreadyUnlock => "RET_SKILLTREE_ALREADY_UNLOCK",
            Retcode::RetSkilltreePreLocked => "RET_SKILLTREE_PRE_LOCKED",
            Retcode::RetSkilltreeLevelNotMeet => "RET_SKILLTREE_LEVEL_NOT_MEET",
            Retcode::RetSkilltreeRankNotMeet => "RET_SKILLTREE_RANK_NOT_MEET",
            Retcode::RetAvatarDressNoEquipment => "RET_AVATAR_DRESS_NO_EQUIPMENT",
            Retcode::RetAvatarExpItemNotExist => "RET_AVATAR_EXP_ITEM_NOT_EXIST",
            Retcode::RetSkilltreePointUnlock => "RET_SKILLTREE_POINT_UNLOCK",
            Retcode::RetSkilltreePointLevelUpgradeNotMatch => {
                "RET_SKILLTREE_POINT_LEVEL_UPGRADE_NOT_MATCH"
            }
            Retcode::RetSkilltreePointLevelReachMax => {
                "RET_SKILLTREE_POINT_LEVEL_REACH_MAX"
            }
            Retcode::RetWorldLevelNotMeet => "RET_WORLD_LEVEL_NOT_MEET",
            Retcode::RetPlayerLevelNotMeet => "RET_PLAYER_LEVEL_NOT_MEET",
            Retcode::RetAvatarRankNotMatch => "RET_AVATAR_RANK_NOT_MATCH",
            Retcode::RetAvatarRankReachMax => "RET_AVATAR_RANK_REACH_MAX",
            Retcode::RetHeroBasicTypeNotMatch => "RET_HERO_BASIC_TYPE_NOT_MATCH",
            Retcode::RetAvatarPromotionNotMeet => "RET_AVATAR_PROMOTION_NOT_MEET",
            Retcode::RetPromotionRewardConfigNotExist => {
                "RET_PROMOTION_REWARD_CONFIG_NOT_EXIST"
            }
            Retcode::RetPromotionRewardAlreadyTaken => {
                "RET_PROMOTION_REWARD_ALREADY_TAKEN"
            }
            Retcode::RetAvatarSkinItemNotExist => "RET_AVATAR_SKIN_ITEM_NOT_EXIST",
            Retcode::RetAvatarSkinAlreadyDressed => "RET_AVATAR_SKIN_ALREADY_DRESSED",
            Retcode::RetAvatarNotDressSkin => "RET_AVATAR_NOT_DRESS_SKIN",
            Retcode::RetAvatarSkinNotMatchAvatar => "RET_AVATAR_SKIN_NOT_MATCH_AVATAR",
            Retcode::RetItemNotExist => "RET_ITEM_NOT_EXIST",
            Retcode::RetItemCostNotEnough => "RET_ITEM_COST_NOT_ENOUGH",
            Retcode::RetItemCostTooMuch => "RET_ITEM_COST_TOO_MUCH",
            Retcode::RetItemNoCost => "RET_ITEM_NO_COST",
            Retcode::RetItemNotEnough => "RET_ITEM_NOT_ENOUGH",
            Retcode::RetItemInvalid => "RET_ITEM_INVALID",
            Retcode::RetItemConfigNotExist => "RET_ITEM_CONFIG_NOT_EXIST",
            Retcode::RetScoinNotEnough => "RET_SCOIN_NOT_ENOUGH",
            Retcode::RetItemRewardExceedLimit => "RET_ITEM_REWARD_EXCEED_LIMIT",
            Retcode::RetItemInvalidUse => "RET_ITEM_INVALID_USE",
            Retcode::RetItemUseConfigNotExist => "RET_ITEM_USE_CONFIG_NOT_EXIST",
            Retcode::RetRewardConfigNotExist => "RET_REWARD_CONFIG_NOT_EXIST",
            Retcode::RetItemExceedLimit => "RET_ITEM_EXCEED_LIMIT",
            Retcode::RetItemCountInvalid => "RET_ITEM_COUNT_INVALID",
            Retcode::RetItemUseTargetTypeInvalid => "RET_ITEM_USE_TARGET_TYPE_INVALID",
            Retcode::RetItemUseSatietyFull => "RET_ITEM_USE_SATIETY_FULL",
            Retcode::RetItemComposeNotExist => "RET_ITEM_COMPOSE_NOT_EXIST",
            Retcode::RetRelicComposeNotExist => "RET_RELIC_COMPOSE_NOT_EXIST",
            Retcode::RetItemCanNotSell => "RET_ITEM_CAN_NOT_SELL",
            Retcode::RetItemSellExceddLimit => "RET_ITEM_SELL_EXCEDD_LIMIT",
            Retcode::RetItemNotInCostList => "RET_ITEM_NOT_IN_COST_LIST",
            Retcode::RetItemSpecialCostNotEnough => "RET_ITEM_SPECIAL_COST_NOT_ENOUGH",
            Retcode::RetItemSpecialCostTooMuch => "RET_ITEM_SPECIAL_COST_TOO_MUCH",
            Retcode::RetItemFormulaNotExist => "RET_ITEM_FORMULA_NOT_EXIST",
            Retcode::RetItemAutoGiftOptionalNotExist => {
                "RET_ITEM_AUTO_GIFT_OPTIONAL_NOT_EXIST"
            }
            Retcode::RetRelicComposeRelicInvalid => "RET_RELIC_COMPOSE_RELIC_INVALID",
            Retcode::RetRelicComposeMainAffixIdInvalid => {
                "RET_RELIC_COMPOSE_MAIN_AFFIX_ID_INVALID"
            }
            Retcode::RetRelicComposeWrongFormulaType => {
                "RET_RELIC_COMPOSE_WRONG_FORMULA_TYPE"
            }
            Retcode::RetRelicComposeRelicNotExist => "RET_RELIC_COMPOSE_RELIC_NOT_EXIST",
            Retcode::RetRelicComposeBlackGoldCountInvalid => {
                "RET_RELIC_COMPOSE_BLACK_GOLD_COUNT_INVALID"
            }
            Retcode::RetRelicComposeBlackGoldNotNeed => {
                "RET_RELIC_COMPOSE_BLACK_GOLD_NOT_NEED"
            }
            Retcode::RetMonthCardCannotUse => "RET_MONTH_CARD_CANNOT_USE",
            Retcode::RetItemRewardExceedDisappear => "RET_ITEM_REWARD_EXCEED_DISAPPEAR",
            Retcode::RetItemNeedRecycle => "RET_ITEM_NEED_RECYCLE",
            Retcode::RetItemComposeExceedLimit => "RET_ITEM_COMPOSE_EXCEED_LIMIT",
            Retcode::RetItemCanNotDestroy => "RET_ITEM_CAN_NOT_DESTROY",
            Retcode::RetItemAlreadyMark => "RET_ITEM_ALREADY_MARK",
            Retcode::RetItemMarkExceedLimit => "RET_ITEM_MARK_EXCEED_LIMIT",
            Retcode::RetItemNotMark => "RET_ITEM_NOT_MARK",
            Retcode::RetItenTurnFoodNotSet => "RET_ITEN_TURN_FOOD_NOT_SET",
            Retcode::RetItemTurnFoodAlreadySet => "RET_ITEM_TURN_FOOD_ALREADY_SET",
            Retcode::RetItemTurnFoodConsumeTypeError => {
                "RET_ITEM_TURN_FOOD_CONSUME_TYPE_ERROR"
            }
            Retcode::RetItemTurnFoodSwitchAlreadyOpen => {
                "RET_ITEM_TURN_FOOD_SWITCH_ALREADY_OPEN"
            }
            Retcode::RetItemTurnFoodSwitchAlreadyClose => {
                "RET_ITEM_TURN_FOOD_SWITCH_ALREADY_CLOSE"
            }
            Retcode::RetHcoinExchangeTooMuch => "RET_HCOIN_EXCHANGE_TOO_MUCH",
            Retcode::RetItemTurnFoodSceneTypeError => {
                "RET_ITEM_TURN_FOOD_SCENE_TYPE_ERROR"
            }
            Retcode::RetEquipmentAlreadyDressed => "RET_EQUIPMENT_ALREADY_DRESSED",
            Retcode::RetEquipmentNotExist => "RET_EQUIPMENT_NOT_EXIST",
            Retcode::RetEquipmentReachLevelLimit => "RET_EQUIPMENT_REACH_LEVEL_LIMIT",
            Retcode::RetEquipmentConsumeSelf => "RET_EQUIPMENT_CONSUME_SELF",
            Retcode::RetEquipmentAlreadyLocked => "RET_EQUIPMENT_ALREADY_LOCKED",
            Retcode::RetEquipmentAlreadyUnlocked => "RET_EQUIPMENT_ALREADY_UNLOCKED",
            Retcode::RetEquipmentLocked => "RET_EQUIPMENT_LOCKED",
            Retcode::RetEquipmentSelectNumOverLimit => {
                "RET_EQUIPMENT_SELECT_NUM_OVER_LIMIT"
            }
            Retcode::RetEquipmentRankUpMustConsumeSameTid => {
                "RET_EQUIPMENT_RANK_UP_MUST_CONSUME_SAME_TID"
            }
            Retcode::RetEquipmentPromotionReachMax => "RET_EQUIPMENT_PROMOTION_REACH_MAX",
            Retcode::RetEquipmentRankUpReachMax => "RET_EQUIPMENT_RANK_UP_REACH_MAX",
            Retcode::RetEquipmentLevelReachMax => "RET_EQUIPMENT_LEVEL_REACH_MAX",
            Retcode::RetEquipmentExceedLimit => "RET_EQUIPMENT_EXCEED_LIMIT",
            Retcode::RetRelicNotExist => "RET_RELIC_NOT_EXIST",
            Retcode::RetRelicReachLevelLimit => "RET_RELIC_REACH_LEVEL_LIMIT",
            Retcode::RetRelicConsumeSelf => "RET_RELIC_CONSUME_SELF",
            Retcode::RetRelicAlreadyDressed => "RET_RELIC_ALREADY_DRESSED",
            Retcode::RetRelicLocked => "RET_RELIC_LOCKED",
            Retcode::RetRelicAlreadyLocked => "RET_RELIC_ALREADY_LOCKED",
            Retcode::RetRelicAlreadyUnlocked => "RET_RELIC_ALREADY_UNLOCKED",
            Retcode::RetRelicLevelIsNotZero => "RET_RELIC_LEVEL_IS_NOT_ZERO",
            Retcode::RetUniqueIdRepeated => "RET_UNIQUE_ID_REPEATED",
            Retcode::RetEquipmentLevelNotMeet => "RET_EQUIPMENT_LEVEL_NOT_MEET",
            Retcode::RetEquipmentItemNotInCostList => {
                "RET_EQUIPMENT_ITEM_NOT_IN_COST_LIST"
            }
            Retcode::RetEquipmentLevelGreaterThanOne => {
                "RET_EQUIPMENT_LEVEL_GREATER_THAN_ONE"
            }
            Retcode::RetEquipmentAlreadyRanked => "RET_EQUIPMENT_ALREADY_RANKED",
            Retcode::RetRelicExceedLimit => "RET_RELIC_EXCEED_LIMIT",
            Retcode::RetRelicAlreadyDiscarded => "RET_RELIC_ALREADY_DISCARDED",
            Retcode::RetRelicAlreadyUndiscarded => "RET_RELIC_ALREADY_UNDISCARDED",
            Retcode::RetEquipmentBatchLockTooFast => "RET_EQUIPMENT_BATCH_LOCK_TOO_FAST",
            Retcode::RetLineupInvalidIndex => "RET_LINEUP_INVALID_INDEX",
            Retcode::RetLineupInvalidMemberPos => "RET_LINEUP_INVALID_MEMBER_POS",
            Retcode::RetLineupSwapNotExist => "RET_LINEUP_SWAP_NOT_EXIST",
            Retcode::RetLineupAvatarAlreadyIn => "RET_LINEUP_AVATAR_ALREADY_IN",
            Retcode::RetLineupCreateAvatarError => "RET_LINEUP_CREATE_AVATAR_ERROR",
            Retcode::RetLineupAvatarInitError => "RET_LINEUP_AVATAR_INIT_ERROR",
            Retcode::RetLineupNotExist => "RET_LINEUP_NOT_EXIST",
            Retcode::RetLineupOnlyOneMember => "RET_LINEUP_ONLY_ONE_MEMBER",
            Retcode::RetLineupSameLeaderSlot => "RET_LINEUP_SAME_LEADER_SLOT",
            Retcode::RetLineupNoLeaderSelect => "RET_LINEUP_NO_LEADER_SELECT",
            Retcode::RetLineupSwapSameSlot => "RET_LINEUP_SWAP_SAME_SLOT",
            Retcode::RetLineupAvatarNotExist => "RET_LINEUP_AVATAR_NOT_EXIST",
            Retcode::RetLineupTrialAvatarCanNotQuit => {
                "RET_LINEUP_TRIAL_AVATAR_CAN_NOT_QUIT"
            }
            Retcode::RetLineupVirtualLineupPlaneNotMatch => {
                "RET_LINEUP_VIRTUAL_LINEUP_PLANE_NOT_MATCH"
            }
            Retcode::RetLineupNotValidLeader => "RET_LINEUP_NOT_VALID_LEADER",
            Retcode::RetLineupSameIndex => "RET_LINEUP_SAME_INDEX",
            Retcode::RetLineupIsEmpty => "RET_LINEUP_IS_EMPTY",
            Retcode::RetLineupNameFormatError => "RET_LINEUP_NAME_FORMAT_ERROR",
            Retcode::RetLineupTypeNotMatch => "RET_LINEUP_TYPE_NOT_MATCH",
            Retcode::RetLineupReplaceAllFailed => "RET_LINEUP_REPLACE_ALL_FAILED",
            Retcode::RetLineupNotAllowEdit => "RET_LINEUP_NOT_ALLOW_EDIT",
            Retcode::RetLineupAvatarIsAlive => "RET_LINEUP_AVATAR_IS_ALIVE",
            Retcode::RetLineupAssistHasOnlyMember => "RET_LINEUP_ASSIST_HAS_ONLY_MEMBER",
            Retcode::RetLineupAssistCannotSwitch => "RET_LINEUP_ASSIST_CANNOT_SWITCH",
            Retcode::RetLineupAvatarTypeInvalid => "RET_LINEUP_AVATAR_TYPE_INVALID",
            Retcode::RetLineupNameUtf8Error => "RET_LINEUP_NAME_UTF8_ERROR",
            Retcode::RetLineupLeaderLock => "RET_LINEUP_LEADER_LOCK",
            Retcode::RetLineupStoryLineNotMatch => "RET_LINEUP_STORY_LINE_NOT_MATCH",
            Retcode::RetLineupAvatarLock => "RET_LINEUP_AVATAR_LOCK",
            Retcode::RetLineupAvatarInvalid => "RET_LINEUP_AVATAR_INVALID",
            Retcode::RetLineupAvatarAlreadyInit => "RET_LINEUP_AVATAR_ALREADY_INIT",
            Retcode::RetMailNotExist => "RET_MAIL_NOT_EXIST",
            Retcode::RetMailRangeInvalid => "RET_MAIL_RANGE_INVALID",
            Retcode::RetMailMailIdInvalid => "RET_MAIL_MAIL_ID_INVALID",
            Retcode::RetMailNoMailTakeAttachment => "RET_MAIL_NO_MAIL_TAKE_ATTACHMENT",
            Retcode::RetMailNoMailToDel => "RET_MAIL_NO_MAIL_TO_DEL",
            Retcode::RetMailTypeInvalid => "RET_MAIL_TYPE_INVALID",
            Retcode::RetMailParaInvalid => "RET_MAIL_PARA_INVALID",
            Retcode::RetMailAttachementInvalid => "RET_MAIL_ATTACHEMENT_INVALID",
            Retcode::RetMailTicketInvalid => "RET_MAIL_TICKET_INVALID",
            Retcode::RetMailTicketRepeated => "RET_MAIL_TICKET_REPEATED",
            Retcode::RetStageSettleError => "RET_STAGE_SETTLE_ERROR",
            Retcode::RetStageConfigNotExist => "RET_STAGE_CONFIG_NOT_EXIST",
            Retcode::RetStageNotFound => "RET_STAGE_NOT_FOUND",
            Retcode::RetStageCocoonPropNotValid => "RET_STAGE_COCOON_PROP_NOT_VALID",
            Retcode::RetStageCocoonWaveNotValid => "RET_STAGE_COCOON_WAVE_NOT_VALID",
            Retcode::RetStagePropIdNotEqual => "RET_STAGE_PROP_ID_NOT_EQUAL",
            Retcode::RetStageCocoonWaveOver => "RET_STAGE_COCOON_WAVE_OVER",
            Retcode::RetStageWeekCocoonOverCnt => "RET_STAGE_WEEK_COCOON_OVER_CNT",
            Retcode::RetStageCocoonNotOpen => "RET_STAGE_COCOON_NOT_OPEN",
            Retcode::RetStageTrialNotOpen => "RET_STAGE_TRIAL_NOT_OPEN",
            Retcode::RetStageFarmNotOpen => "RET_STAGE_FARM_NOT_OPEN",
            Retcode::RetStageFarmTypeError => "RET_STAGE_FARM_TYPE_ERROR",
            Retcode::RetChapterLock => "RET_CHAPTER_LOCK",
            Retcode::RetChapterChallengeNumNotEnough => {
                "RET_CHAPTER_CHALLENGE_NUM_NOT_ENOUGH"
            }
            Retcode::RetChapterRewardIdNotExist => "RET_CHAPTER_REWARD_ID_NOT_EXIST",
            Retcode::RetChapterRewardAlreadyTaken => "RET_CHAPTER_REWARD_ALREADY_TAKEN",
            Retcode::RetBattleStageNotMatch => "RET_BATTLE_STAGE_NOT_MATCH",
            Retcode::RetInBattleNow => "RET_IN_BATTLE_NOW",
            Retcode::RetBattleCheat => "RET_BATTLE_CHEAT",
            Retcode::RetBattleFail => "RET_BATTLE_FAIL",
            Retcode::RetBattleNoLineup => "RET_BATTLE_NO_LINEUP",
            Retcode::RetBattleLineupEmpty => "RET_BATTLE_LINEUP_EMPTY",
            Retcode::RetBattleVersionNotMatch => "RET_BATTLE_VERSION_NOT_MATCH",
            Retcode::RetBattleQuitByServer => "RET_BATTLE_QUIT_BY_SERVER",
            Retcode::RetInBattleCheck => "RET_IN_BATTLE_CHECK",
            Retcode::RetBattleCheckNeedRetry => "RET_BATTLE_CHECK_NEED_RETRY",
            Retcode::RetBattleCostTimeCheckFail => "RET_BATTLE_COST_TIME_CHECK_FAIL",
            Retcode::RetLackExchangeStaminaTimes => "RET_LACK_EXCHANGE_STAMINA_TIMES",
            Retcode::RetLackStamina => "RET_LACK_STAMINA",
            Retcode::RetStaminaFull => "RET_STAMINA_FULL",
            Retcode::RetAuthkeySignTypeError => "RET_AUTHKEY_SIGN_TYPE_ERROR",
            Retcode::RetAuthkeySignVerError => "RET_AUTHKEY_SIGN_VER_ERROR",
            Retcode::RetNicknameFormatError => "RET_NICKNAME_FORMAT_ERROR",
            Retcode::RetSensitiveWords => "RET_SENSITIVE_WORDS",
            Retcode::RetLevelRewardHasTaken => "RET_LEVEL_REWARD_HAS_TAKEN",
            Retcode::RetLevelRewardLevelError => "RET_LEVEL_REWARD_LEVEL_ERROR",
            Retcode::RetLanguageInvalid => "RET_LANGUAGE_INVALID",
            Retcode::RetNicknameInCd => "RET_NICKNAME_IN_CD",
            Retcode::RetGameplayBirthdayInvalid => "RET_GAMEPLAY_BIRTHDAY_INVALID",
            Retcode::RetGameplayBirthdayAlreadySet => "RET_GAMEPLAY_BIRTHDAY_ALREADY_SET",
            Retcode::RetNicknameUtf8Error => "RET_NICKNAME_UTF8_ERROR",
            Retcode::RetNicknameDigitLimitError => "RET_NICKNAME_DIGIT_LIMIT_ERROR",
            Retcode::RetSensitiveWordsPlatformError => {
                "RET_SENSITIVE_WORDS_PLATFORM_ERROR"
            }
            Retcode::RetPlayerSettingTypeInvalid => "RET_PLAYER_SETTING_TYPE_INVALID",
            Retcode::RetMazeLackTicket => "RET_MAZE_LACK_TICKET",
            Retcode::RetMazeNotUnlock => "RET_MAZE_NOT_UNLOCK",
            Retcode::RetMazeNoAbility => "RET_MAZE_NO_ABILITY",
            Retcode::RetMazeNoPlane => "RET_MAZE_NO_PLANE",
            Retcode::RetMazeMapNotExist => "RET_MAZE_MAP_NOT_EXIST",
            Retcode::RetMazeMpNotEnough => "RET_MAZE_MP_NOT_ENOUGH",
            Retcode::RetSpringNotEnable => "RET_SPRING_NOT_ENABLE",
            Retcode::RetSpringTooFar => "RET_SPRING_TOO_FAR",
            Retcode::RetNotInMaze => "RET_NOT_IN_MAZE",
            Retcode::RetMazeTimeOfDayTypeError => "RET_MAZE_TIME_OF_DAY_TYPE_ERROR",
            Retcode::RetSceneTransferLockedByTask => "RET_SCENE_TRANSFER_LOCKED_BY_TASK",
            Retcode::RetPlotNotUnlock => "RET_PLOT_NOT_UNLOCK",
            Retcode::RetMissionNotExist => "RET_MISSION_NOT_EXIST",
            Retcode::RetMissionAlreadyDone => "RET_MISSION_ALREADY_DONE",
            Retcode::RetDailyTaskNotFinish => "RET_DAILY_TASK_NOT_FINISH",
            Retcode::RetDailyTaskRewardHasTaken => "RET_DAILY_TASK_REWARD_HAS_TAKEN",
            Retcode::RetMissionNotFinish => "RET_MISSION_NOT_FINISH",
            Retcode::RetMissionNotDoing => "RET_MISSION_NOT_DOING",
            Retcode::RetMissionFinishWayNotMatch => "RET_MISSION_FINISH_WAY_NOT_MATCH",
            Retcode::RetMissionSceneNotMatch => "RET_MISSION_SCENE_NOT_MATCH",
            Retcode::RetMissionCustomValueNotValid => {
                "RET_MISSION_CUSTOM_VALUE_NOT_VALID"
            }
            Retcode::RetMissionSubMissionNotMatch => "RET_MISSION_SUB_MISSION_NOT_MATCH",
            Retcode::RetAdventureMapNotExist => "RET_ADVENTURE_MAP_NOT_EXIST",
            Retcode::RetSceneEntityNotExist => "RET_SCENE_ENTITY_NOT_EXIST",
            Retcode::RetNotInScene => "RET_NOT_IN_SCENE",
            Retcode::RetSceneMonsterNotExist => "RET_SCENE_MONSTER_NOT_EXIST",
            Retcode::RetInteractConfigNotExist => "RET_INTERACT_CONFIG_NOT_EXIST",
            Retcode::RetUnsupportedPropState => "RET_UNSUPPORTED_PROP_STATE",
            Retcode::RetSceneEntryIdNotMatch => "RET_SCENE_ENTRY_ID_NOT_MATCH",
            Retcode::RetSceneEntityMoveCheckFailed => {
                "RET_SCENE_ENTITY_MOVE_CHECK_FAILED"
            }
            Retcode::RetAssistMonsterCountLimit => "RET_ASSIST_MONSTER_COUNT_LIMIT",
            Retcode::RetSceneUseSkillFail => "RET_SCENE_USE_SKILL_FAIL",
            Retcode::RetPropIsHidden => "RET_PROP_IS_HIDDEN",
            Retcode::RetLoadingSuccAlready => "RET_LOADING_SUCC_ALREADY",
            Retcode::RetSceneEntityTypeInvalid => "RET_SCENE_ENTITY_TYPE_INVALID",
            Retcode::RetInteractTypeInvalid => "RET_INTERACT_TYPE_INVALID",
            Retcode::RetInteractNotInRegion => "RET_INTERACT_NOT_IN_REGION",
            Retcode::RetInteractSubTypeInvalid => "RET_INTERACT_SUB_TYPE_INVALID",
            Retcode::RetNotLeaderEntity => "RET_NOT_LEADER_ENTITY",
            Retcode::RetMonsterIsNotFarmElement => "RET_MONSTER_IS_NOT_FARM_ELEMENT",
            Retcode::RetMonsterConfigNotExist => "RET_MONSTER_CONFIG_NOT_EXIST",
            Retcode::RetAvatarHpAlreadyFull => "RET_AVATAR_HP_ALREADY_FULL",
            Retcode::RetCurInteractEntityNotMatch => "RET_CUR_INTERACT_ENTITY_NOT_MATCH",
            Retcode::RetPlaneTypeNotAllow => "RET_PLANE_TYPE_NOT_ALLOW",
            Retcode::RetGroupNotExist => "RET_GROUP_NOT_EXIST",
            Retcode::RetGroupSaveDataInCd => "RET_GROUP_SAVE_DATA_IN_CD",
            Retcode::RetGroupSaveLenghReachMax => "RET_GROUP_SAVE_LENGH_REACH_MAX",
            Retcode::RetRecentElementNotExist => "RET_RECENT_ELEMENT_NOT_EXIST",
            Retcode::RetRecentElementStageNotMatch => {
                "RET_RECENT_ELEMENT_STAGE_NOT_MATCH"
            }
            Retcode::RetScenePositionVersionNotMatch => {
                "RET_SCENE_POSITION_VERSION_NOT_MATCH"
            }
            Retcode::RetGameplayCounterNotExist => "RET_GAMEPLAY_COUNTER_NOT_EXIST",
            Retcode::RetGameplayCounterNotEnough => "RET_GAMEPLAY_COUNTER_NOT_ENOUGH",
            Retcode::RetGroupStateNotMatch => "RET_GROUP_STATE_NOT_MATCH",
            Retcode::RetSceneEntityPosNotMatch => "RET_SCENE_ENTITY_POS_NOT_MATCH",
            Retcode::RetGroupStateCustomSaveDataOff => {
                "RET_GROUP_STATE_CUSTOM_SAVE_DATA_OFF"
            }
            Retcode::RetBuyTimesLimit => "RET_BUY_TIMES_LIMIT",
            Retcode::RetBuyLimitType => "RET_BUY_LIMIT_TYPE",
            Retcode::RetShopNotOpen => "RET_SHOP_NOT_OPEN",
            Retcode::RetGoodsNotOpen => "RET_GOODS_NOT_OPEN",
            Retcode::RetCityLevelRewardTaken => "RET_CITY_LEVEL_REWARD_TAKEN",
            Retcode::RetCityLevelNotMeet => "RET_CITY_LEVEL_NOT_MEET",
            Retcode::RetSingleBuyLimit => "RET_SINGLE_BUY_LIMIT",
            Retcode::RetTutorialNotUnlock => "RET_TUTORIAL_NOT_UNLOCK",
            Retcode::RetTutorialUnlockAlready => "RET_TUTORIAL_UNLOCK_ALREADY",
            Retcode::RetTutorialFinishAlready => "RET_TUTORIAL_FINISH_ALREADY",
            Retcode::RetTutorialPreNotUnlock => "RET_TUTORIAL_PRE_NOT_UNLOCK",
            Retcode::RetTutorialPlayerLevelNotMatch => {
                "RET_TUTORIAL_PLAYER_LEVEL_NOT_MATCH"
            }
            Retcode::RetTutorialTutorialNotFound => "RET_TUTORIAL_TUTORIAL_NOT_FOUND",
            Retcode::RetChallengeNotExist => "RET_CHALLENGE_NOT_EXIST",
            Retcode::RetChallengeNotUnlock => "RET_CHALLENGE_NOT_UNLOCK",
            Retcode::RetChallengeAlready => "RET_CHALLENGE_ALREADY",
            Retcode::RetChallengeLineupEditForbidden => {
                "RET_CHALLENGE_LINEUP_EDIT_FORBIDDEN"
            }
            Retcode::RetChallengeLineupEmpty => "RET_CHALLENGE_LINEUP_EMPTY",
            Retcode::RetChallengeNotDoing => "RET_CHALLENGE_NOT_DOING",
            Retcode::RetChallengeNotFinish => "RET_CHALLENGE_NOT_FINISH",
            Retcode::RetChallengeTargetNotFinish => "RET_CHALLENGE_TARGET_NOT_FINISH",
            Retcode::RetChallengeTargetRewardTaken => "RET_CHALLENGE_TARGET_REWARD_TAKEN",
            Retcode::RetChallengeTimeNotValid => "RET_CHALLENGE_TIME_NOT_VALID",
            Retcode::RetChallengeStarsCountNotMeet => {
                "RET_CHALLENGE_STARS_COUNT_NOT_MEET"
            }
            Retcode::RetChallengeStarsRewardTaken => "RET_CHALLENGE_STARS_REWARD_TAKEN",
            Retcode::RetChallengeStarsNotExist => "RET_CHALLENGE_STARS_NOT_EXIST",
            Retcode::RetChallengeCurSceneNotEntryFloor => {
                "RET_CHALLENGE_CUR_SCENE_NOT_ENTRY_FLOOR"
            }
            Retcode::RetBasicTypeAlready => "RET_BASIC_TYPE_ALREADY",
            Retcode::RetNoBasicType => "RET_NO_BASIC_TYPE",
            Retcode::RetNotChooseBasicType => "RET_NOT_CHOOSE_BASIC_TYPE",
            Retcode::RetNotFuncClose => "RET_NOT_FUNC_CLOSE",
            Retcode::RetNotChooseGender => "RET_NOT_CHOOSE_GENDER",
            Retcode::RetRogueStatusNotMatch => "RET_ROGUE_STATUS_NOT_MATCH",
            Retcode::RetRogueSelectBuffNotExist => "RET_ROGUE_SELECT_BUFF_NOT_EXIST",
            Retcode::RetRogueCoinNotEnough => "RET_ROGUE_COIN_NOT_ENOUGH",
            Retcode::RetRogueStaminaNotEnough => "RET_ROGUE_STAMINA_NOT_ENOUGH",
            Retcode::RetRogueAppraisalCountNotEnough => {
                "RET_ROGUE_APPRAISAL_COUNT_NOT_ENOUGH"
            }
            Retcode::RetRoguePropAlreadyUsed => "RET_ROGUE_PROP_ALREADY_USED",
            Retcode::RetRogueRecordAlreadySaved => "RET_ROGUE_RECORD_ALREADY_SAVED",
            Retcode::RetRogueRollBuffMaxCount => "RET_ROGUE_ROLL_BUFF_MAX_COUNT",
            Retcode::RetRoguePickAvatarInvalid => "RET_ROGUE_PICK_AVATAR_INVALID",
            Retcode::RetRogueQuestExpire => "RET_ROGUE_QUEST_EXPIRE",
            Retcode::RetRogueQuestRewardAlready => "RET_ROGUE_QUEST_REWARD_ALREADY",
            Retcode::RetRogueReviveCountNotEnough => "RET_ROGUE_REVIVE_COUNT_NOT_ENOUGH",
            Retcode::RetRogueAreaInvalid => "RET_ROGUE_AREA_INVALID",
            Retcode::RetRogueScoreRewardPoolInvalid => {
                "RET_ROGUE_SCORE_REWARD_POOL_INVALID"
            }
            Retcode::RetRogueScoreRewardRowInvalid => {
                "RET_ROGUE_SCORE_REWARD_ROW_INVALID"
            }
            Retcode::RetRogueAeonLevelNotMeet => "RET_ROGUE_AEON_LEVEL_NOT_MEET",
            Retcode::RetRogueAeonLevelRewardAlreadyTaken => {
                "RET_ROGUE_AEON_LEVEL_REWARD_ALREADY_TAKEN"
            }
            Retcode::RetRogueAeonConfigNotExist => "RET_ROGUE_AEON_CONFIG_NOT_EXIST",
            Retcode::RetRogueTrialAvatarInvalid => "RET_ROGUE_TRIAL_AVATAR_INVALID",
            Retcode::RetRogueHandbookRewardAlreadyTaken => {
                "RET_ROGUE_HANDBOOK_REWARD_ALREADY_TAKEN"
            }
            Retcode::RetRogueRoomTypeNotMatch => "RET_ROGUE_ROOM_TYPE_NOT_MATCH",
            Retcode::RetRogueShopGoodNotFound => "RET_ROGUE_SHOP_GOOD_NOT_FOUND",
            Retcode::RetRogueShopGoodAlreadyBought => {
                "RET_ROGUE_SHOP_GOOD_ALREADY_BOUGHT"
            }
            Retcode::RetRogueShopGoodAlreadyOwn => "RET_ROGUE_SHOP_GOOD_ALREADY_OWN",
            Retcode::RetRogueShopMiracleNotExist => "RET_ROGUE_SHOP_MIRACLE_NOT_EXIST",
            Retcode::RetRogueShopNotExist => "RET_ROGUE_SHOP_NOT_EXIST",
            Retcode::RetRogueShopCannotRefresh => "RET_ROGUE_SHOP_CANNOT_REFRESH",
            Retcode::RetMissionEventConfigNotExist => {
                "RET_MISSION_EVENT_CONFIG_NOT_EXIST"
            }
            Retcode::RetMissionEventNotClient => "RET_MISSION_EVENT_NOT_CLIENT",
            Retcode::RetMissionEventFinished => "RET_MISSION_EVENT_FINISHED",
            Retcode::RetMissionEventDoing => "RET_MISSION_EVENT_DOING",
            Retcode::RetHasChallengeMissionEvent => "RET_HAS_CHALLENGE_MISSION_EVENT",
            Retcode::RetNotChallengeMissionEvent => "RET_NOT_CHALLENGE_MISSION_EVENT",
            Retcode::RetGachaIdNotExist => "RET_GACHA_ID_NOT_EXIST",
            Retcode::RetGachaNumInvalid => "RET_GACHA_NUM_INVALID",
            Retcode::RetGachaFirstGachaMustOne => "RET_GACHA_FIRST_GACHA_MUST_ONE",
            Retcode::RetGachaReqDuplicated => "RET_GACHA_REQ_DUPLICATED",
            Retcode::RetGachaNotInSchedule => "RET_GACHA_NOT_IN_SCHEDULE",
            Retcode::RetGachaNewbieClose => "RET_GACHA_NEWBIE_CLOSE",
            Retcode::RetGachaTodayLimited => "RET_GACHA_TODAY_LIMITED",
            Retcode::RetGachaNotSupport => "RET_GACHA_NOT_SUPPORT",
            Retcode::RetGachaCeilingNotEnough => "RET_GACHA_CEILING_NOT_ENOUGH",
            Retcode::RetGachaCeilingClose => "RET_GACHA_CEILING_CLOSE",
            Retcode::RetNotInRaid => "RET_NOT_IN_RAID",
            Retcode::RetRaidDoing => "RET_RAID_DOING",
            Retcode::RetNotProp => "RET_NOT_PROP",
            Retcode::RetRaidIdNotMatch => "RET_RAID_ID_NOT_MATCH",
            Retcode::RetRaidRestartNotMatch => "RET_RAID_RESTART_NOT_MATCH",
            Retcode::RetRaidLimit => "RET_RAID_LIMIT",
            Retcode::RetRaidAvatarListEmpty => "RET_RAID_AVATAR_LIST_EMPTY",
            Retcode::RetRaidAvatarNotExist => "RET_RAID_AVATAR_NOT_EXIST",
            Retcode::RetChallengeRaidRewardAlready => "RET_CHALLENGE_RAID_REWARD_ALREADY",
            Retcode::RetChallengeRaidScoreNotReach => {
                "RET_CHALLENGE_RAID_SCORE_NOT_REACH"
            }
            Retcode::RetChallengeRaidNotOpen => "RET_CHALLENGE_RAID_NOT_OPEN",
            Retcode::RetRaidFinished => "RET_RAID_FINISHED",
            Retcode::RetRaidWorldLevelNotLock => "RET_RAID_WORLD_LEVEL_NOT_LOCK",
            Retcode::RetRaidCannotUseAssist => "RET_RAID_CANNOT_USE_ASSIST",
            Retcode::RetRaidAvatarNotMatch => "RET_RAID_AVATAR_NOT_MATCH",
            Retcode::RetRaidCanNotSave => "RET_RAID_CAN_NOT_SAVE",
            Retcode::RetRaidNoSave => "RET_RAID_NO_SAVE",
            Retcode::RetActivityRaidNotOpen => "RET_ACTIVITY_RAID_NOT_OPEN",
            Retcode::RetRaidAvatarCaptainNotExist => "RET_RAID_AVATAR_CAPTAIN_NOT_EXIST",
            Retcode::RetRaidStoryLineNotMatch => "RET_RAID_STORY_LINE_NOT_MATCH",
            Retcode::RetTalkEventAlreadyTaken => "RET_TALK_EVENT_ALREADY_TAKEN",
            Retcode::RetNpcAlreadyMeet => "RET_NPC_ALREADY_MEET",
            Retcode::RetNpcNotInConfig => "RET_NPC_NOT_IN_CONFIG",
            Retcode::RetDialogueGroupDismatch => "RET_DIALOGUE_GROUP_DISMATCH",
            Retcode::RetDialogueEventInvalid => "RET_DIALOGUE_EVENT_INVALID",
            Retcode::RetTalkEventTakeProtoNotMatch => {
                "RET_TALK_EVENT_TAKE_PROTO_NOT_MATCH"
            }
            Retcode::RetTalkEventNotValid => "RET_TALK_EVENT_NOT_VALID",
            Retcode::RetExpeditionConfigNotExist => "RET_EXPEDITION_CONFIG_NOT_EXIST",
            Retcode::RetExpeditionRewardConfigNotExist => {
                "RET_EXPEDITION_REWARD_CONFIG_NOT_EXIST"
            }
            Retcode::RetExpeditionNotUnlocked => "RET_EXPEDITION_NOT_UNLOCKED",
            Retcode::RetExpeditionAlreadyAccepted => "RET_EXPEDITION_ALREADY_ACCEPTED",
            Retcode::RetExpeditionRepeatedAvatar => "RET_EXPEDITION_REPEATED_AVATAR",
            Retcode::RetAvatarAlreadyDispatched => "RET_AVATAR_ALREADY_DISPATCHED",
            Retcode::RetExpeditionNotAccepted => "RET_EXPEDITION_NOT_ACCEPTED",
            Retcode::RetExpeditionNotFinish => "RET_EXPEDITION_NOT_FINISH",
            Retcode::RetExpeditionAlreadyFinish => "RET_EXPEDITION_ALREADY_FINISH",
            Retcode::RetExpeditionTeamCountLimit => "RET_EXPEDITION_TEAM_COUNT_LIMIT",
            Retcode::RetExpeditionAvatarNumNotMatch => {
                "RET_EXPEDITION_AVATAR_NUM_NOT_MATCH"
            }
            Retcode::RetExpeditionNotOpen => "RET_EXPEDITION_NOT_OPEN",
            Retcode::RetExpeditionFriendAvatarNotValid => {
                "RET_EXPEDITION_FRIEND_AVATAR_NOT_VALID"
            }
            Retcode::RetExpeditionNotPublished => "RET_EXPEDITION_NOT_PUBLISHED",
            Retcode::RetLoginActivityHasTaken => "RET_LOGIN_ACTIVITY_HAS_TAKEN",
            Retcode::RetLoginActivityDaysLack => "RET_LOGIN_ACTIVITY_DAYS_LACK",
            Retcode::RetTrialActivityRewardAlreadyTake => {
                "RET_TRIAL_ACTIVITY_REWARD_ALREADY_TAKE"
            }
            Retcode::RetTrialActivityStageNotFinish => {
                "RET_TRIAL_ACTIVITY_STAGE_NOT_FINISH"
            }
            Retcode::RetMonsterResearchActivityHasTaken => {
                "RET_MONSTER_RESEARCH_ACTIVITY_HAS_TAKEN"
            }
            Retcode::RetMonsterResearchActivityMaterialNotSubmitted => {
                "RET_MONSTER_RESEARCH_ACTIVITY_MATERIAL_NOT_SUBMITTED"
            }
            Retcode::RetMonsterResearchActivityMaterialAlreadySubmitted => {
                "RET_MONSTER_RESEARCH_ACTIVITY_MATERIAL_ALREADY_SUBMITTED"
            }
            Retcode::RetFantasticStoryActivityStoryError => {
                "RET_FANTASTIC_STORY_ACTIVITY_STORY_ERROR"
            }
            Retcode::RetFantasticStoryActivityStoryNotOpen => {
                "RET_FANTASTIC_STORY_ACTIVITY_STORY_NOT_OPEN"
            }
            Retcode::RetFantasticStoryActivityBattleError => {
                "RET_FANTASTIC_STORY_ACTIVITY_BATTLE_ERROR"
            }
            Retcode::RetFantasticStoryActivityBattleNotOpen => {
                "RET_FANTASTIC_STORY_ACTIVITY_BATTLE_NOT_OPEN"
            }
            Retcode::RetFantasticStoryActivityBattleAvatarError => {
                "RET_FANTASTIC_STORY_ACTIVITY_BATTLE_AVATAR_ERROR"
            }
            Retcode::RetFantasticStoryActivityBattleBuffError => {
                "RET_FANTASTIC_STORY_ACTIVITY_BATTLE_BUFF_ERROR"
            }
            Retcode::RetFantasticStoryActivityPreBattleScoreNotEnough => {
                "RET_FANTASTIC_STORY_ACTIVITY_PRE_BATTLE_SCORE_NOT_ENOUGH"
            }
            Retcode::RetTrialActivityAlreadyInTrialActivity => {
                "RET_TRIAL_ACTIVITY_ALREADY_IN_TRIAL_ACTIVITY"
            }
            Retcode::RetMessageConfigNotExist => "RET_MESSAGE_CONFIG_NOT_EXIST",
            Retcode::RetMessageSectionNotTake => "RET_MESSAGE_SECTION_NOT_TAKE",
            Retcode::RetMessageGroupNotTake => "RET_MESSAGE_GROUP_NOT_TAKE",
            Retcode::RetMessageSectionIdNotMatch => "RET_MESSAGE_SECTION_ID_NOT_MATCH",
            Retcode::RetMessageSectionCanNotFinish => {
                "RET_MESSAGE_SECTION_CAN_NOT_FINISH"
            }
            Retcode::RetMessageItemCanNotFinish => "RET_MESSAGE_ITEM_CAN_NOT_FINISH",
            Retcode::RetMessageItemRaidCanNotFinish => {
                "RET_MESSAGE_ITEM_RAID_CAN_NOT_FINISH"
            }
            Retcode::RetFriendAlreadyIsFriend => "RET_FRIEND_ALREADY_IS_FRIEND",
            Retcode::RetFriendIsNotFriend => "RET_FRIEND_IS_NOT_FRIEND",
            Retcode::RetFriendApplyExpire => "RET_FRIEND_APPLY_EXPIRE",
            Retcode::RetFriendInBlacklist => "RET_FRIEND_IN_BLACKLIST",
            Retcode::RetFriendNotInBlacklist => "RET_FRIEND_NOT_IN_BLACKLIST",
            Retcode::RetFriendNumberLimit => "RET_FRIEND_NUMBER_LIMIT",
            Retcode::RetFriendBlacklistNumberLimit => "RET_FRIEND_BLACKLIST_NUMBER_LIMIT",
            Retcode::RetFriendDailyApplyLimit => "RET_FRIEND_DAILY_APPLY_LIMIT",
            Retcode::RetFriendInHandleLimit => "RET_FRIEND_IN_HANDLE_LIMIT",
            Retcode::RetFriendApplyInCd => "RET_FRIEND_APPLY_IN_CD",
            Retcode::RetFriendRemarkNameFormatError => {
                "RET_FRIEND_REMARK_NAME_FORMAT_ERROR"
            }
            Retcode::RetFriendPlayerNotFound => "RET_FRIEND_PLAYER_NOT_FOUND",
            Retcode::RetFriendInTargetBlacklist => "RET_FRIEND_IN_TARGET_BLACKLIST",
            Retcode::RetFriendTargetNumberLimit => "RET_FRIEND_TARGET_NUMBER_LIMIT",
            Retcode::RetAssistQueryTooFast => "RET_ASSIST_QUERY_TOO_FAST",
            Retcode::RetAssistNotExist => "RET_ASSIST_NOT_EXIST",
            Retcode::RetAssistUsedAlready => "RET_ASSIST_USED_ALREADY",
            Retcode::RetFriendReportReasonFormatError => {
                "RET_FRIEND_REPORT_REASON_FORMAT_ERROR"
            }
            Retcode::RetFriendReportSensitiveWords => "RET_FRIEND_REPORT_SENSITIVE_WORDS",
            Retcode::RetAssistUsedTimesOver => "RET_ASSIST_USED_TIMES_OVER",
            Retcode::RetAssistQuitAlready => "RET_ASSIST_QUIT_ALREADY",
            Retcode::RetAssistAvatarInLineup => "RET_ASSIST_AVATAR_IN_LINEUP",
            Retcode::RetAssistNoReward => "RET_ASSIST_NO_REWARD",
            Retcode::RetFriendSearchNumLimit => "RET_FRIEND_SEARCH_NUM_LIMIT",
            Retcode::RetFriendSearchInCd => "RET_FRIEND_SEARCH_IN_CD",
            Retcode::RetFriendRemarkNameUtf8Error => "RET_FRIEND_REMARK_NAME_UTF8_ERROR",
            Retcode::RetFriendReportReasonUtf8Error => {
                "RET_FRIEND_REPORT_REASON_UTF8_ERROR"
            }
            Retcode::RetAssistSetAlready => "RET_ASSIST_SET_ALREADY",
            Retcode::RetFriendTargetForbidOtherApply => {
                "RET_FRIEND_TARGET_FORBID_OTHER_APPLY"
            }
            Retcode::RetFriendMarkedCntMax => "RET_FRIEND_MARKED_CNT_MAX",
            Retcode::RetFriendMarkedAlready => "RET_FRIEND_MARKED_ALREADY",
            Retcode::RetFriendNotMarked => "RET_FRIEND_NOT_MARKED",
            Retcode::RetFriendChallengeLineupRecommendInCd => {
                "RET_FRIEND_CHALLENGE_LINEUP_RECOMMEND_IN_CD"
            }
            Retcode::RetViewPlayerCardInCd => "RET_VIEW_PLAYER_CARD_IN_CD",
            Retcode::RetViewPlayerBattleRecordInCd => {
                "RET_VIEW_PLAYER_BATTLE_RECORD_IN_CD"
            }
            Retcode::RetPlayerBoardHeadIconNotExist => {
                "RET_PLAYER_BOARD_HEAD_ICON_NOT_EXIST"
            }
            Retcode::RetPlayerBoardHeadIconLocked => "RET_PLAYER_BOARD_HEAD_ICON_LOCKED",
            Retcode::RetPlayerBoardHeadIconAlreadyUnlocked => {
                "RET_PLAYER_BOARD_HEAD_ICON_ALREADY_UNLOCKED"
            }
            Retcode::RetPlayerBoardDisplayAvatarNotExist => {
                "RET_PLAYER_BOARD_DISPLAY_AVATAR_NOT_EXIST"
            }
            Retcode::RetPlayerBoardDisplayAvatarExceedLimit => {
                "RET_PLAYER_BOARD_DISPLAY_AVATAR_EXCEED_LIMIT"
            }
            Retcode::RetPlayerBoardDisplayRepeatedAvatar => {
                "RET_PLAYER_BOARD_DISPLAY_REPEATED_AVATAR"
            }
            Retcode::RetPlayerBoardDisplayAvatarSamePos => {
                "RET_PLAYER_BOARD_DISPLAY_AVATAR_SAME_POS"
            }
            Retcode::RetPlayerBoardDisplayAvatarLocked => {
                "RET_PLAYER_BOARD_DISPLAY_AVATAR_LOCKED"
            }
            Retcode::RetSignatureLengthExceedLimit => "RET_SIGNATURE_LENGTH_EXCEED_LIMIT",
            Retcode::RetSignatureSensitiveWords => "RET_SIGNATURE_SENSITIVE_WORDS",
            Retcode::RetPlayerBoardAssistAvatarNotExist => {
                "RET_PLAYER_BOARD_ASSIST_AVATAR_NOT_EXIST"
            }
            Retcode::RetPlayerBoardAssistAvatarLocked => {
                "RET_PLAYER_BOARD_ASSIST_AVATAR_LOCKED"
            }
            Retcode::RetSignatureUtf8Error => "RET_SIGNATURE_UTF8_ERROR",
            Retcode::RetPlayerBoardAssistAvatarCntError => {
                "RET_PLAYER_BOARD_ASSIST_AVATAR_CNT_ERROR"
            }
            Retcode::RetBattlePassTierNotValid => "RET_BATTLE_PASS_TIER_NOT_VALID",
            Retcode::RetBattlePassLevelNotMeet => "RET_BATTLE_PASS_LEVEL_NOT_MEET",
            Retcode::RetBattlePassRewardTakeAlready => {
                "RET_BATTLE_PASS_REWARD_TAKE_ALREADY"
            }
            Retcode::RetBattlePassNotPremium => "RET_BATTLE_PASS_NOT_PREMIUM",
            Retcode::RetBattlePassNotDoing => "RET_BATTLE_PASS_NOT_DOING",
            Retcode::RetBattlePassLevelInvalid => "RET_BATTLE_PASS_LEVEL_INVALID",
            Retcode::RetBattlePassNotUnlock => "RET_BATTLE_PASS_NOT_UNLOCK",
            Retcode::RetBattlePassNoReward => "RET_BATTLE_PASS_NO_REWARD",
            Retcode::RetBattlePassQuestNotValid => "RET_BATTLE_PASS_QUEST_NOT_VALID",
            Retcode::RetBattlePassNotChooseOptional => {
                "RET_BATTLE_PASS_NOT_CHOOSE_OPTIONAL"
            }
            Retcode::RetBattlePassNotTakeReward => "RET_BATTLE_PASS_NOT_TAKE_REWARD",
            Retcode::RetBattlePassOptionalNotValid => {
                "RET_BATTLE_PASS_OPTIONAL_NOT_VALID"
            }
            Retcode::RetBattlePassBuyAlready => "RET_BATTLE_PASS_BUY_ALREADY",
            Retcode::RetBattlePassNearEnd => "RET_BATTLE_PASS_NEAR_END",
            Retcode::RetMusicLocked => "RET_MUSIC_LOCKED",
            Retcode::RetMusicNotExist => "RET_MUSIC_NOT_EXIST",
            Retcode::RetMusicUnlockFailed => "RET_MUSIC_UNLOCK_FAILED",
            Retcode::RetPunkLordLackSummonTimes => "RET_PUNK_LORD_LACK_SUMMON_TIMES",
            Retcode::RetPunkLordAttackingMonsterLimit => {
                "RET_PUNK_LORD_ATTACKING_MONSTER_LIMIT"
            }
            Retcode::RetPunkLordMonsterNotExist => "RET_PUNK_LORD_MONSTER_NOT_EXIST",
            Retcode::RetPunkLordMonsterAlreadyShared => {
                "RET_PUNK_LORD_MONSTER_ALREADY_SHARED"
            }
            Retcode::RetPunkLordMonsterExpired => "RET_PUNK_LORD_MONSTER_EXPIRED",
            Retcode::RetPunkLordSelfMonsterAttackLimit => {
                "RET_PUNK_LORD_SELF_MONSTER_ATTACK_LIMIT"
            }
            Retcode::RetPunkLordLackSupportTimes => "RET_PUNK_LORD_LACK_SUPPORT_TIMES",
            Retcode::RetPunkLordMonsterAlreadyKilled => {
                "RET_PUNK_LORD_MONSTER_ALREADY_KILLED"
            }
            Retcode::RetPunkLordMonsterAttackerLimit => {
                "RET_PUNK_LORD_MONSTER_ATTACKER_LIMIT"
            }
            Retcode::RetPunkLordWorldLevleNotValid => {
                "RET_PUNK_LORD_WORLD_LEVLE_NOT_VALID"
            }
            Retcode::RetPunkLordRewardLevleNotExist => {
                "RET_PUNK_LORD_REWARD_LEVLE_NOT_EXIST"
            }
            Retcode::RetPunkLordPointNotMeet => "RET_PUNK_LORD_POINT_NOT_MEET",
            Retcode::RetPunkLordInAttacking => "RET_PUNK_LORD_IN_ATTACKING",
            Retcode::RetPunkLordOperationInCd => "RET_PUNK_LORD_OPERATION_IN_CD",
            Retcode::RetPunkLordRewardAlreadyTaken => {
                "RET_PUNK_LORD_REWARD_ALREADY_TAKEN"
            }
            Retcode::RetPunkLordOverBonusRewardLimit => {
                "RET_PUNK_LORD_OVER_BONUS_REWARD_LIMIT"
            }
            Retcode::RetPunkLordNotInSchedule => "RET_PUNK_LORD_NOT_IN_SCHEDULE",
            Retcode::RetPunkLordMonsterNotAttacked => {
                "RET_PUNK_LORD_MONSTER_NOT_ATTACKED"
            }
            Retcode::RetPunkLordMonsterNotKilled => "RET_PUNK_LORD_MONSTER_NOT_KILLED",
            Retcode::RetPunkLordMonsterKilledScoreAlreadyTake => {
                "RET_PUNK_LORD_MONSTER_KILLED_SCORE_ALREADY_TAKE"
            }
            Retcode::RetPunkLordRewardLevleAlreadyTake => {
                "RET_PUNK_LORD_REWARD_LEVLE_ALREADY_TAKE"
            }
            Retcode::RetDailyActiveLevelInvalid => "RET_DAILY_ACTIVE_LEVEL_INVALID",
            Retcode::RetDailyActiveLevelRewardAlreadyTaken => {
                "RET_DAILY_ACTIVE_LEVEL_REWARD_ALREADY_TAKEN"
            }
            Retcode::RetDailyActiveLevelApNotEnough => {
                "RET_DAILY_ACTIVE_LEVEL_AP_NOT_ENOUGH"
            }
            Retcode::RetDailyMeetPam => "RET_DAILY_MEET_PAM",
            Retcode::RetReplayIdNotMatch => "RET_REPLAY_ID_NOT_MATCH",
            Retcode::RetReplayReqNotValid => "RET_REPLAY_REQ_NOT_VALID",
            Retcode::RetFightActivityDifficultyLevelNotPassed => {
                "RET_FIGHT_ACTIVITY_DIFFICULTY_LEVEL_NOT_PASSED"
            }
            Retcode::RetFightActivityDifficultyLevelRewardAlreadyTake => {
                "RET_FIGHT_ACTIVITY_DIFFICULTY_LEVEL_REWARD_ALREADY_TAKE"
            }
            Retcode::RetFightActivityStageNotOpen => "RET_FIGHT_ACTIVITY_STAGE_NOT_OPEN",
            Retcode::RetTrainVisitorVisitorNotExist => {
                "RET_TRAIN_VISITOR_VISITOR_NOT_EXIST"
            }
            Retcode::RetTrainVisitorBehaviorNotExist => {
                "RET_TRAIN_VISITOR_BEHAVIOR_NOT_EXIST"
            }
            Retcode::RetTrainVisitorBehaviorFinished => {
                "RET_TRAIN_VISITOR_BEHAVIOR_FINISHED"
            }
            Retcode::RetTrainVisitorAllBehaviorRewardTaken => {
                "RET_TRAIN_VISITOR_ALL_BEHAVIOR_REWARD_TAKEN"
            }
            Retcode::RetTrainVisitorGetOnMissionNotFinish => {
                "RET_TRAIN_VISITOR_GET_ON_MISSION_NOT_FINISH"
            }
            Retcode::RetTrainVisitorNotGetOff => "RET_TRAIN_VISITOR_NOT_GET_OFF",
            Retcode::RetTextJoinUnknowIsOverride => "RET_TEXT_JOIN_UNKNOW_IS_OVERRIDE",
            Retcode::RetTextJoinIdNotExist => "RET_TEXT_JOIN_ID_NOT_EXIST",
            Retcode::RetTextJoinCanNotOverride => "RET_TEXT_JOIN_CAN_NOT_OVERRIDE",
            Retcode::RetTextJoinItemIdError => "RET_TEXT_JOIN_ITEM_ID_ERROR",
            Retcode::RetTextJoinSensitiveCheckError => {
                "RET_TEXT_JOIN_SENSITIVE_CHECK_ERROR"
            }
            Retcode::RetTextJoinMustOverride => "RET_TEXT_JOIN_MUST_OVERRIDE",
            Retcode::RetTextJoinTextEmpty => "RET_TEXT_JOIN_TEXT_EMPTY",
            Retcode::RetTextJoinTextFormatError => "RET_TEXT_JOIN_TEXT_FORMAT_ERROR",
            Retcode::RetTextJoinTextUtf8Error => "RET_TEXT_JOIN_TEXT_UTF8_ERROR",
            Retcode::RetTextJoinBatchReqIdRepeat => "RET_TEXT_JOIN_BATCH_REQ_ID_REPEAT",
            Retcode::RetTextJoinTypeNotSupportBatchReq => {
                "RET_TEXT_JOIN_TYPE_NOT_SUPPORT_BATCH_REQ"
            }
            Retcode::RetTextJoinAvatarIdNotExist => "RET_TEXT_JOIN_AVATAR_ID_NOT_EXIST",
            Retcode::RetTextJoinUnknowType => "RET_TEXT_JOIN_UNKNOW_TYPE",
            Retcode::RetPamMissionMissionIdError => "RET_PAM_MISSION_MISSION_ID_ERROR",
            Retcode::RetPamMissionMissionExpire => "RET_PAM_MISSION_MISSION_EXPIRE",
            Retcode::RetChatTypeNotExist => "RET_CHAT_TYPE_NOT_EXIST",
            Retcode::RetMsgTypeNotExist => "RET_MSG_TYPE_NOT_EXIST",
            Retcode::RetChatNoTargetUid => "RET_CHAT_NO_TARGET_UID",
            Retcode::RetChatMsgEmpty => "RET_CHAT_MSG_EMPTY",
            Retcode::RetChatMsgExceedLimit => "RET_CHAT_MSG_EXCEED_LIMIT",
            Retcode::RetChatMsgSensitiveCheckError => {
                "RET_CHAT_MSG_SENSITIVE_CHECK_ERROR"
            }
            Retcode::RetChatMsgUtf8Error => "RET_CHAT_MSG_UTF8_ERROR",
            Retcode::RetChatForbidSwitchOpen => "RET_CHAT_FORBID_SWITCH_OPEN",
            Retcode::RetChatForbid => "RET_CHAT_FORBID",
            Retcode::RetChatMsgIncludeSpecialStr => "RET_CHAT_MSG_INCLUDE_SPECIAL_STR",
            Retcode::RetChatMsgEmojiNotExist => "RET_CHAT_MSG_EMOJI_NOT_EXIST",
            Retcode::RetChatMsgEmojiGenderNotMatch => {
                "RET_CHAT_MSG_EMOJI_GENDER_NOT_MATCH"
            }
            Retcode::RetChatMsgEmojiNotMarked => "RET_CHAT_MSG_EMOJI_NOT_MARKED",
            Retcode::RetChatMsgEmojiAlreadyMarked => "RET_CHAT_MSG_EMOJI_ALREADY_MARKED",
            Retcode::RetChatMsgEmojiMarkedMaxLimit => {
                "RET_CHAT_MSG_EMOJI_MARKED_MAX_LIMIT"
            }
            Retcode::RetBoxingClubChallengeNotOpen => {
                "RET_BOXING_CLUB_CHALLENGE_NOT_OPEN"
            }
            Retcode::RetMuseumNotOpen => "RET_MUSEUM_NOT_OPEN",
            Retcode::RetMuseumTurnCntNotMatch => "RET_MUSEUM_TURN_CNT_NOT_MATCH",
            Retcode::RetMuseumPhaseNotReach => "RET_MUSEUM_PHASE_NOT_REACH",
            Retcode::RetMuseumUnknowStuff => "RET_MUSEUM_UNKNOW_STUFF",
            Retcode::RetMuseumUnknowArea => "RET_MUSEUM_UNKNOW_AREA",
            Retcode::RetMuseumUnknowPos => "RET_MUSEUM_UNKNOW_POS",
            Retcode::RetMuseumStuffAlreadyInArea => "RET_MUSEUM_STUFF_ALREADY_IN_AREA",
            Retcode::RetMuseumStuffNotInArea => "RET_MUSEUM_STUFF_NOT_IN_AREA",
            Retcode::RetMuseumGetNpcRepeat => "RET_MUSEUM_GET_NPC_REPEAT",
            Retcode::RetMuseumGetNpcUnlock => "RET_MUSEUM_GET_NPC_UNLOCK",
            Retcode::RetMuseumGetNpcNotEnough => "RET_MUSEUM_GET_NPC_NOT_ENOUGH",
            Retcode::RetMuseumChangeStuffAreaError => {
                "RET_MUSEUM_CHANGE_STUFF_AREA_ERROR"
            }
            Retcode::RetMuseumNotInit => "RET_MUSEUM_NOT_INIT",
            Retcode::RetMuseumEventError => "RET_MUSEUM_EVENT_ERROR",
            Retcode::RetMuseumUnknowChooseEventId => "RET_MUSEUM_UNKNOW_CHOOSE_EVENT_ID",
            Retcode::RetMuseumEventOrderNotMatch => "RET_MUSEUM_EVENT_ORDER_NOT_MATCH",
            Retcode::RetMuseumEventPhaseNotUnlock => "RET_MUSEUM_EVENT_PHASE_NOT_UNLOCK",
            Retcode::RetMuseumEventMissionNotFound => {
                "RET_MUSEUM_EVENT_MISSION_NOT_FOUND"
            }
            Retcode::RetMuseumAreaLevelUpAlready => "RET_MUSEUM_AREA_LEVEL_UP_ALREADY",
            Retcode::RetMuseumStuffAlreadyUsed => "RET_MUSEUM_STUFF_ALREADY_USED",
            Retcode::RetMuseumEventRoundNotUnlock => "RET_MUSEUM_EVENT_ROUND_NOT_UNLOCK",
            Retcode::RetMuseumStuffInArea => "RET_MUSEUM_STUFF_IN_AREA",
            Retcode::RetMuseumStuffDispatch => "RET_MUSEUM_STUFF_DISPATCH",
            Retcode::RetMuseumIsEnd => "RET_MUSEUM_IS_END",
            Retcode::RetMuseumStuffLeaving => "RET_MUSEUM_STUFF_LEAVING",
            Retcode::RetMuseumEventMissionNotFinish => {
                "RET_MUSEUM_EVENT_MISSION_NOT_FINISH"
            }
            Retcode::RetMuseumCollectRewardNotExist => {
                "RET_MUSEUM_COLLECT_REWARD_NOT_EXIST"
            }
            Retcode::RetMuseumCollectRewardAlreadyTaken => {
                "RET_MUSEUM_COLLECT_REWARD_ALREADY_TAKEN"
            }
            Retcode::RetMuseumAcceptMissionMaxLimit => {
                "RET_MUSEUM_ACCEPT_MISSION_MAX_LIMIT"
            }
            Retcode::RetRogueChallengeNotOpen => "RET_ROGUE_CHALLENGE_NOT_OPEN",
            Retcode::RetRogueChallengeAssisRefreshLimit => {
                "RET_ROGUE_CHALLENGE_ASSIS_REFRESH_LIMIT"
            }
            Retcode::RetAlleyNotInit => "RET_ALLEY_NOT_INIT",
            Retcode::RetAlleyNotOpen => "RET_ALLEY_NOT_OPEN",
            Retcode::RetAlleyMapNotExist => "RET_ALLEY_MAP_NOT_EXIST",
            Retcode::RetAlleyEmptyPosList => "RET_ALLEY_EMPTY_POS_LIST",
            Retcode::RetAlleyLinePosInvalid => "RET_ALLEY_LINE_POS_INVALID",
            Retcode::RetAlleyShopNotUnlock => "RET_ALLEY_SHOP_NOT_UNLOCK",
            Retcode::RetAlleyDepotFull => "RET_ALLEY_DEPOT_FULL",
            Retcode::RetAlleyShopNotInclude => "RET_ALLEY_SHOP_NOT_INCLUDE",
            Retcode::RetAlleyEventNotUnlock => "RET_ALLEY_EVENT_NOT_UNLOCK",
            Retcode::RetAlleyEventNotRefresh => "RET_ALLEY_EVENT_NOT_REFRESH",
            Retcode::RetAlleyEventStateDoing => "RET_ALLEY_EVENT_STATE_DOING",
            Retcode::RetAlleyEventStateFinish => "RET_ALLEY_EVENT_STATE_FINISH",
            Retcode::RetAlleyEventError => "RET_ALLEY_EVENT_ERROR",
            Retcode::RetAlleyRewardLevelError => "RET_ALLEY_REWARD_LEVEL_ERROR",
            Retcode::RetAlleyRewardPrestigeNotEnough => {
                "RET_ALLEY_REWARD_PRESTIGE_NOT_ENOUGH"
            }
            Retcode::RetAlleyShipEmpty => "RET_ALLEY_SHIP_EMPTY",
            Retcode::RetAlleyShipIdDismatch => "RET_ALLEY_SHIP_ID_DISMATCH",
            Retcode::RetAlleyShipNotExist => "RET_ALLEY_SHIP_NOT_EXIST",
            Retcode::RetAlleyShipNotUnlock => "RET_ALLEY_SHIP_NOT_UNLOCK",
            Retcode::RetAlleyGoodsNotExist => "RET_ALLEY_GOODS_NOT_EXIST",
            Retcode::RetAlleyGoodsNotUnlock => "RET_ALLEY_GOODS_NOT_UNLOCK",
            Retcode::RetAlleyProfitNotPositive => "RET_ALLEY_PROFIT_NOT_POSITIVE",
            Retcode::RetAlleySpecialOrderDismatch => "RET_ALLEY_SPECIAL_ORDER_DISMATCH",
            Retcode::RetAlleyOrderGoodsOverLimit => "RET_ALLEY_ORDER_GOODS_OVER_LIMIT",
            Retcode::RetAlleySpecialOrderConditionNotMeet => {
                "RET_ALLEY_SPECIAL_ORDER_CONDITION_NOT_MEET"
            }
            Retcode::RetAlleyDepotSizeOverLimit => "RET_ALLEY_DEPOT_SIZE_OVER_LIMIT",
            Retcode::RetAlleyGoodsNotEnough => "RET_ALLEY_GOODS_NOT_ENOUGH",
            Retcode::RetAlleyOrderIndexInvalid => "RET_ALLEY_ORDER_INDEX_INVALID",
            Retcode::RetAlleyRewardAlreadyTake => "RET_ALLEY_REWARD_ALREADY_TAKE",
            Retcode::RetAlleyRewardNotExist => "RET_ALLEY_REWARD_NOT_EXIST",
            Retcode::RetAlleyMainMissionNotDoing => "RET_ALLEY_MAIN_MISSION_NOT_DOING",
            Retcode::RetAlleyCriticalEventNotFinish => {
                "RET_ALLEY_CRITICAL_EVENT_NOT_FINISH"
            }
            Retcode::RetAlleyShopGoodsNotValid => "RET_ALLEY_SHOP_GOODS_NOT_VALID",
            Retcode::RetAlleySlashNotOpen => "RET_ALLEY_SLASH_NOT_OPEN",
            Retcode::RetAlleyPlacingAnchorInvalid => "RET_ALLEY_PLACING_ANCHOR_INVALID",
            Retcode::RetAlleyPlacingGoodsIndexInvalid => {
                "RET_ALLEY_PLACING_GOODS_INDEX_INVALID"
            }
            Retcode::RetAlleySaveMapTooQuick => "RET_ALLEY_SAVE_MAP_TOO_QUICK",
            Retcode::RetAlleyMapNotLink => "RET_ALLEY_MAP_NOT_LINK",
            Retcode::RetAlleyFundsNotLowerBase => "RET_ALLEY_FUNDS_NOT_LOWER_BASE",
            Retcode::RetAlleyEventNotFinish => "RET_ALLEY_EVENT_NOT_FINISH",
            Retcode::RetAlleyNormalOrderNotMeet => "RET_ALLEY_NORMAL_ORDER_NOT_MEET",
            Retcode::RetPlayerReturnNotOpen => "RET_PLAYER_RETURN_NOT_OPEN",
            Retcode::RetPlayerReturnIsSigned => "RET_PLAYER_RETURN_IS_SIGNED",
            Retcode::RetPlayerReturnPointNotEnough => {
                "RET_PLAYER_RETURN_POINT_NOT_ENOUGH"
            }
            Retcode::RetPlayerReturnConditionInvalid => {
                "RET_PLAYER_RETURN_CONDITION_INVALID"
            }
            Retcode::RetPlayerReturnHasSigned => "RET_PLAYER_RETURN_HAS_SIGNED",
            Retcode::RetPlayerReturnRewardTaken => "RET_PLAYER_RETURN_REWARD_TAKEN",
            Retcode::RetAetherDivideNoLineup => "RET_AETHER_DIVIDE_NO_LINEUP",
            Retcode::RetAetherDivideLineupInvalid => "RET_AETHER_DIVIDE_LINEUP_INVALID",
            Retcode::RetChatBubbleIdError => "RET_CHAT_BUBBLE_ID_ERROR",
            Retcode::RetChatBubbleIdNotUnlock => "RET_CHAT_BUBBLE_ID_NOT_UNLOCK",
            Retcode::RetPhoneThemeIdError => "RET_PHONE_THEME_ID_ERROR",
            Retcode::RetPhoneThemeIdNotUnlock => "RET_PHONE_THEME_ID_NOT_UNLOCK",
            Retcode::RetChatBubbleSelectIsCurrent => "RET_CHAT_BUBBLE_SELECT_IS_CURRENT",
            Retcode::RetPhoneThemeSelectIsCurrent => "RET_PHONE_THEME_SELECT_IS_CURRENT",
            Retcode::RetChessRogueConfigNotFound => "RET_CHESS_ROGUE_CONFIG_NOT_FOUND",
            Retcode::RetChessRogueConfigInvalid => "RET_CHESS_ROGUE_CONFIG_INVALID",
            Retcode::RetChessRogueNoValidRoom => "RET_CHESS_ROGUE_NO_VALID_ROOM",
            Retcode::RetChessRogueNoCellInfo => "RET_CHESS_ROGUE_NO_CELL_INFO",
            Retcode::RetChessRogueCellNotFinish => "RET_CHESS_ROGUE_CELL_NOT_FINISH",
            Retcode::RetChessRogueCellIsLocked => "RET_CHESS_ROGUE_CELL_IS_LOCKED",
            Retcode::RetChessRogueScheduleNotMatch => {
                "RET_CHESS_ROGUE_SCHEDULE_NOT_MATCH"
            }
            Retcode::RetChessRogueStatusFail => "RET_CHESS_ROGUE_STATUS_FAIL",
            Retcode::RetChessRogueAreaNotExist => "RET_CHESS_ROGUE_AREA_NOT_EXIST",
            Retcode::RetChessRogueLineupFail => "RET_CHESS_ROGUE_LINEUP_FAIL",
            Retcode::RetChessRogueAeonFail => "RET_CHESS_ROGUE_AEON_FAIL",
            Retcode::RetChessRogueEnterCellFail => "RET_CHESS_ROGUE_ENTER_CELL_FAIL",
            Retcode::RetChessRogueRollDiceFail => "RET_CHESS_ROGUE_ROLL_DICE_FAIL",
            Retcode::RetChessRogueDiceStatusFail => "RET_CHESS_ROGUE_DICE_STATUS_FAIL",
            Retcode::RetChessRogueDiceCntNotFull => "RET_CHESS_ROGUE_DICE_CNT_NOT_FULL",
            Retcode::RetChessRogueUnlock => "RET_CHESS_ROGUE_UNLOCK",
            Retcode::RetChessRoguePickAvatarFail => "RET_CHESS_ROGUE_PICK_AVATAR_FAIL",
            Retcode::RetChessRogueAvatarInvalid => "RET_CHESS_ROGUE_AVATAR_INVALID",
            Retcode::RetChessRogueCellCanNotSelect => {
                "RET_CHESS_ROGUE_CELL_CAN_NOT_SELECT"
            }
            Retcode::RetChessRogueDiceConfirmed => "RET_CHESS_ROGUE_DICE_CONFIRMED",
            Retcode::RetChessRogueNousDiceNotMatch => {
                "RET_CHESS_ROGUE_NOUS_DICE_NOT_MATCH"
            }
            Retcode::RetChessRogueNousDiceRarityFail => {
                "RET_CHESS_ROGUE_NOUS_DICE_RARITY_FAIL"
            }
            Retcode::RetChessRogueNousDiceSurfaceDuplicate => {
                "RET_CHESS_ROGUE_NOUS_DICE_SURFACE_DUPLICATE"
            }
            Retcode::RetChessRogueNotInRogue => "RET_CHESS_ROGUE_NOT_IN_ROGUE",
            Retcode::RetChessRogueNousDiceBranchLimit => {
                "RET_CHESS_ROGUE_NOUS_DICE_BRANCH_LIMIT"
            }
            Retcode::RetHeliobusNotOpen => "RET_HELIOBUS_NOT_OPEN",
            Retcode::RetHeliobusSnsPostNotUnlock => "RET_HELIOBUS_SNS_POST_NOT_UNLOCK",
            Retcode::RetHeliobusSnsAlreadyRead => "RET_HELIOBUS_SNS_ALREADY_READ",
            Retcode::RetHeliobusSnsAlreadyLiked => "RET_HELIOBUS_SNS_ALREADY_LIKED",
            Retcode::RetHeliobusSnsAlreadyCommented => {
                "RET_HELIOBUS_SNS_ALREADY_COMMENTED"
            }
            Retcode::RetHeliobusSnsInMission => "RET_HELIOBUS_SNS_IN_MISSION",
            Retcode::RetHeliobusSnsAlreadyPosted => "RET_HELIOBUS_SNS_ALREADY_POSTED",
            Retcode::RetHeliobusSnsNotDoingMission => {
                "RET_HELIOBUS_SNS_NOT_DOING_MISSION"
            }
            Retcode::RetHeliobusRewardLevelMax => "RET_HELIOBUS_REWARD_LEVEL_MAX",
            Retcode::RetHeliobusIncomeNotEnough => "RET_HELIOBUS_INCOME_NOT_ENOUGH",
            Retcode::RetHeliobusSnsCommentNotUnlock => {
                "RET_HELIOBUS_SNS_COMMENT_NOT_UNLOCK"
            }
            Retcode::RetHeliobusChallengeNotUnlock => "RET_HELIOBUS_CHALLENGE_NOT_UNLOCK",
            Retcode::RetHeliobusChallengeIdError => "RET_HELIOBUS_CHALLENGE_ID_ERROR",
            Retcode::RetHeliobusSkillNotUnlock => "RET_HELIOBUS_SKILL_NOT_UNLOCK",
            Retcode::RetHeliobusAcceptPostMissionFail => {
                "RET_HELIOBUS_ACCEPT_POST_MISSION_FAIL"
            }
            Retcode::RetHeliobusSkillNotSelected => "RET_HELIOBUS_SKILL_NOT_SELECTED",
            Retcode::RetHeliobusPlaneTypeInvalid => "RET_HELIOBUS_PLANE_TYPE_INVALID",
            Retcode::RetReddotParamInvalid => "RET_REDDOT_PARAM_INVALID",
            Retcode::RetReddotActivityNotOpen => "RET_REDDOT_ACTIVITY_NOT_OPEN",
            Retcode::RetRogueEndlessActivityConfigError => {
                "RET_ROGUE_ENDLESS_ACTIVITY_CONFIG_ERROR"
            }
            Retcode::RetRogueEndlessActivityNotOpen => {
                "RET_ROGUE_ENDLESS_ACTIVITY_NOT_OPEN"
            }
            Retcode::RetRogueEndlessActivityOverBonusRewardLimit => {
                "RET_ROGUE_ENDLESS_ACTIVITY_OVER_BONUS_REWARD_LIMIT"
            }
            Retcode::RetRogueEndlessActivityScoreNotMeet => {
                "RET_ROGUE_ENDLESS_ACTIVITY_SCORE_NOT_MEET"
            }
            Retcode::RetRogueEndlessActivityRewardLevleAlreadyTake => {
                "RET_ROGUE_ENDLESS_ACTIVITY_REWARD_LEVLE_ALREADY_TAKE"
            }
            Retcode::RetHeartDialScriptNotFound => "RET_HEART_DIAL_SCRIPT_NOT_FOUND",
            Retcode::RetHeartDialScriptEmotionTheSame => {
                "RET_HEART_DIAL_SCRIPT_EMOTION_THE_SAME"
            }
            Retcode::RetHeartDialScriptStepNotNormal => {
                "RET_HEART_DIAL_SCRIPT_STEP_NOT_NORMAL"
            }
            Retcode::RetHeartDialScriptConditionNotMatch => {
                "RET_HEART_DIAL_SCRIPT_CONDITION_NOT_MATCH"
            }
            Retcode::RetHeartDialScriptSubmitItemNumNotMatch => {
                "RET_HEART_DIAL_SCRIPT_SUBMIT_ITEM_NUM_NOT_MATCH"
            }
            Retcode::RetHeartDialScriptSubmitItemIdNotMatch => {
                "RET_HEART_DIAL_SCRIPT_SUBMIT_ITEM_ID_NOT_MATCH"
            }
            Retcode::RetHeartDialDialogueNotFound => "RET_HEART_DIAL_DIALOGUE_NOT_FOUND",
            Retcode::RetHeartDialDialogueAlreadyPerformed => {
                "RET_HEART_DIAL_DIALOGUE_ALREADY_PERFORMED"
            }
            Retcode::RetHeartDialNpcNotFound => "RET_HEART_DIAL_NPC_NOT_FOUND",
            Retcode::RetHeartDialTraceConfigNotFound => {
                "RET_HEART_DIAL_TRACE_CONFIG_NOT_FOUND"
            }
            Retcode::RetHeartDialFloorTraceExist => "RET_HEART_DIAL_FLOOR_TRACE_EXIST",
            Retcode::RetHeartDialTraceFloorNotMatch => {
                "RET_HEART_DIAL_TRACE_FLOOR_NOT_MATCH"
            }
            Retcode::RetTravelBrochureConfigError => "RET_TRAVEL_BROCHURE_CONFIG_ERROR",
            Retcode::RetTravelBrochureParamInvalid => "RET_TRAVEL_BROCHURE_PARAM_INVALID",
            Retcode::RetTravelBrochureLocked => "RET_TRAVEL_BROCHURE_LOCKED",
            Retcode::RetTravelBrochureCannotOperate => {
                "RET_TRAVEL_BROCHURE_CANNOT_OPERATE"
            }
            Retcode::RetTravelBrochureWorldIdNotMatch => {
                "RET_TRAVEL_BROCHURE_WORLD_ID_NOT_MATCH"
            }
            Retcode::RetTravelBrochureHasNoWorldBook => {
                "RET_TRAVEL_BROCHURE_HAS_NO_WORLD_BOOK"
            }
            Retcode::RetTravelBrochurePageFull => "RET_TRAVEL_BROCHURE_PAGE_FULL",
            Retcode::RetMapRotationNotInRegion => "RET_MAP_ROTATION_NOT_IN_REGION",
            Retcode::RetMapRotationRotaterAlreadyDeployed => {
                "RET_MAP_ROTATION_ROTATER_ALREADY_DEPLOYED"
            }
            Retcode::RetMapRotationEnergyNotEnough => {
                "RET_MAP_ROTATION_ENERGY_NOT_ENOUGH"
            }
            Retcode::RetMapRotationEntityNotOnCurPose => {
                "RET_MAP_ROTATION_ENTITY_NOT_ON_CUR_POSE"
            }
            Retcode::RetMapRotationRotaterNotDeployed => {
                "RET_MAP_ROTATION_ROTATER_NOT_DEPLOYED"
            }
            Retcode::RetMapRotationPoseRotaterMismatch => {
                "RET_MAP_ROTATION_POSE_ROTATER_MISMATCH"
            }
            Retcode::RetMapRotationRotaterNotRemovable => {
                "RET_MAP_ROTATION_ROTATER_NOT_REMOVABLE"
            }
            Retcode::RetMapRotationRotaterDisposable => {
                "RET_MAP_ROTATION_ROTATER_DISPOSABLE"
            }
            Retcode::RetSpaceZooActivityCatNotFound => {
                "RET_SPACE_ZOO_ACTIVITY_CAT_NOT_FOUND"
            }
            Retcode::RetSpaceZooActivityCatParamInvalid => {
                "RET_SPACE_ZOO_ACTIVITY_CAT_PARAM_INVALID"
            }
            Retcode::RetSpaceZooActivityCatItemNotEnough => {
                "RET_SPACE_ZOO_ACTIVITY_CAT_ITEM_NOT_ENOUGH"
            }
            Retcode::RetSpaceZooActivityCatBagFull => {
                "RET_SPACE_ZOO_ACTIVITY_CAT_BAG_FULL"
            }
            Retcode::RetSpaceZooActivityCatNotToMutate => {
                "RET_SPACE_ZOO_ACTIVITY_CAT_NOT_TO_MUTATE"
            }
            Retcode::RetSpaceZooActivityCatStateError => {
                "RET_SPACE_ZOO_ACTIVITY_CAT_STATE_ERROR"
            }
            Retcode::RetSpaceZooActivityCatCatteryLocked => {
                "RET_SPACE_ZOO_ACTIVITY_CAT_CATTERY_LOCKED"
            }
            Retcode::RetSpaceZooActivityCatOutNow => "RET_SPACE_ZOO_ACTIVITY_CAT_OUT_NOW",
            Retcode::RetSpaceZooActivityCatConfigNotFound => {
                "RET_SPACE_ZOO_ACTIVITY_CAT_CONFIG_NOT_FOUND"
            }
            Retcode::RetSpaceZooActivityCatFeatureNotFound => {
                "RET_SPACE_ZOO_ACTIVITY_CAT_FEATURE_NOT_FOUND"
            }
            Retcode::RetSpaceZooActivityCatAddCatError => {
                "RET_SPACE_ZOO_ACTIVITY_CAT_ADD_CAT_ERROR"
            }
            Retcode::RetSpaceZooActivityCatMoneyNotEnough => {
                "RET_SPACE_ZOO_ACTIVITY_CAT_MONEY_NOT_ENOUGH"
            }
            Retcode::RetSpaceZooActivityCatCondNotMatch => {
                "RET_SPACE_ZOO_ACTIVITY_CAT_COND_NOT_MATCH"
            }
            Retcode::RetStrongChallengeActivityStageCfgMiss => {
                "RET_STRONG_CHALLENGE_ACTIVITY_STAGE_CFG_MISS"
            }
            Retcode::RetStrongChallengeActivityStageNotOpen => {
                "RET_STRONG_CHALLENGE_ACTIVITY_STAGE_NOT_OPEN"
            }
            Retcode::RetStrongChallengeActivityBuffError => {
                "RET_STRONG_CHALLENGE_ACTIVITY_BUFF_ERROR"
            }
            Retcode::RetRollShopNotFound => "RET_ROLL_SHOP_NOT_FOUND",
            Retcode::RetRollShopGroupEmpty => "RET_ROLL_SHOP_GROUP_EMPTY",
            Retcode::RetRollShopEmpty => "RET_ROLL_SHOP_EMPTY",
            Retcode::RetRollShopGachaReqDuplicated => {
                "RET_ROLL_SHOP_GACHA_REQ_DUPLICATED"
            }
            Retcode::RetRollShopRandomError => "RET_ROLL_SHOP_RANDOM_ERROR",
            Retcode::RetRollShopGroupTypeNotFound => "RET_ROLL_SHOP_GROUP_TYPE_NOT_FOUND",
            Retcode::RetRollShopHasStoredRewardAlready => {
                "RET_ROLL_SHOP_HAS_STORED_REWARD_ALREADY"
            }
            Retcode::RetRollShopNoStoredReward => "RET_ROLL_SHOP_NO_STORED_REWARD",
            Retcode::RetRollShopNotInValidScene => "RET_ROLL_SHOP_NOT_IN_VALID_SCENE",
            Retcode::RetRollShopInvalidRollShopType => {
                "RET_ROLL_SHOP_INVALID_ROLL_SHOP_TYPE"
            }
            Retcode::RetActivityRaidCollectionPrevNotFinish => {
                "RET_ACTIVITY_RAID_COLLECTION_PREV_NOT_FINISH"
            }
            Retcode::RetOfferingNotUnlock => "RET_OFFERING_NOT_UNLOCK",
            Retcode::RetOfferingLevelNotUnlock => "RET_OFFERING_LEVEL_NOT_UNLOCK",
            Retcode::RetOfferingReachMaxLevel => "RET_OFFERING_REACH_MAX_LEVEL",
            Retcode::RetOfferingItemNotEnough => "RET_OFFERING_ITEM_NOT_ENOUGH",
            Retcode::RetOfferingLongtailNotOpen => "RET_OFFERING_LONGTAIL_NOT_OPEN",
            Retcode::RetOfferingRewardCondition => "RET_OFFERING_REWARD_CONDITION",
            Retcode::RetDrinkMakerChatInvalid => "RET_DRINK_MAKER_CHAT_INVALID",
            Retcode::RetDrinkMakerParamInvalid => "RET_DRINK_MAKER_PARAM_INVALID",
            Retcode::RetDrinkMakerParamNotUnlock => "RET_DRINK_MAKER_PARAM_NOT_UNLOCK",
            Retcode::RetDrinkMakerConfigNotFound => "RET_DRINK_MAKER_CONFIG_NOT_FOUND",
            Retcode::RetDrinkMakerNotLastChat => "RET_DRINK_MAKER_NOT_LAST_CHAT",
            Retcode::RetDrinkMakerDayAndFreePhaseNotOpen => {
                "RET_DRINK_MAKER_DAY_AND_FREE_PHASE_NOT_OPEN"
            }
            Retcode::RetMonopolyNotOpen => "RET_MONOPOLY_NOT_OPEN",
            Retcode::RetMonopolyConfigError => "RET_MONOPOLY_CONFIG_ERROR",
            Retcode::RetMonopolyDiceNotEnough => "RET_MONOPOLY_DICE_NOT_ENOUGH",
            Retcode::RetMonopolyCurCellNotFinish => "RET_MONOPOLY_CUR_CELL_NOT_FINISH",
            Retcode::RetMonopolyCoinNotEnough => "RET_MONOPOLY_COIN_NOT_ENOUGH",
            Retcode::RetMonopolyCellWaitPending => "RET_MONOPOLY_CELL_WAIT_PENDING",
            Retcode::RetMonopolyCellStateError => "RET_MONOPOLY_CELL_STATE_ERROR",
            Retcode::RetMonopolyCellContentError => "RET_MONOPOLY_CELL_CONTENT_ERROR",
            Retcode::RetMonopolyItemNotEnough => "RET_MONOPOLY_ITEM_NOT_ENOUGH",
            Retcode::RetMonopolyCellContentCannotGiveup => {
                "RET_MONOPOLY_CELL_CONTENT_CANNOT_GIVEUP"
            }
            Retcode::RetMonopolyAssetLevelInvalid => "RET_MONOPOLY_ASSET_LEVEL_INVALID",
            Retcode::RetMonopolyTurnNotFinish => "RET_MONOPOLY_TURN_NOT_FINISH",
            Retcode::RetMonopolyGuideNotFinish => "RET_MONOPOLY_GUIDE_NOT_FINISH",
            Retcode::RetMonopolyRaffleRewardReissued => {
                "RET_MONOPOLY_RAFFLE_REWARD_REISSUED"
            }
            Retcode::RetMonopolyNoGameActive => "RET_MONOPOLY_NO_GAME_ACTIVE",
            Retcode::RetMonopolyGameRatioNotIncreasable => {
                "RET_MONOPOLY_GAME_RATIO_NOT_INCREASABLE"
            }
            Retcode::RetMonopolyGameRatioMax => "RET_MONOPOLY_GAME_RATIO_MAX",
            Retcode::RetMonopolyGameTargetRatioInvalid => {
                "RET_MONOPOLY_GAME_TARGET_RATIO_INVALID"
            }
            Retcode::RetMonopolyGameBingoFlipPosInvalid => {
                "RET_MONOPOLY_GAME_BINGO_FLIP_POS_INVALID"
            }
            Retcode::RetMonopolyGameGuessAlreadyChoose => {
                "RET_MONOPOLY_GAME_GUESS_ALREADY_CHOOSE"
            }
            Retcode::RetMonopolyGameGuessChooseInvalid => {
                "RET_MONOPOLY_GAME_GUESS_CHOOSE_INVALID"
            }
            Retcode::RetMonopolyGameGuessInformationAlreadyBought => {
                "RET_MONOPOLY_GAME_GUESS_INFORMATION_ALREADY_BOUGHT"
            }
            Retcode::RetMonopolyGameRaiseRatioNotUnlock => {
                "RET_MONOPOLY_GAME_RAISE_RATIO_NOT_UNLOCK"
            }
            Retcode::RetMonopolyFriendNotSynced => "RET_MONOPOLY_FRIEND_NOT_SYNCED",
            Retcode::RetMonopolyGetFriendRankingListInCd => {
                "RET_MONOPOLY_GET_FRIEND_RANKING_LIST_IN_CD"
            }
            Retcode::RetMonopolyLikeTargetNotFriend => {
                "RET_MONOPOLY_LIKE_TARGET_NOT_FRIEND"
            }
            Retcode::RetMonopolyDailyAlreadyLiked => "RET_MONOPOLY_DAILY_ALREADY_LIKED",
            Retcode::RetMonopolySocialEventStatusNotMatch => {
                "RET_MONOPOLY_SOCIAL_EVENT_STATUS_NOT_MATCH"
            }
            Retcode::RetMonopolySocialEventServerCacheNotExist => {
                "RET_MONOPOLY_SOCIAL_EVENT_SERVER_CACHE_NOT_EXIST"
            }
            Retcode::RetMonopolyActivityIdNotMatch => {
                "RET_MONOPOLY_ACTIVITY_ID_NOT_MATCH"
            }
            Retcode::RetMonopolyRafflePoolNotExist => {
                "RET_MONOPOLY_RAFFLE_POOL_NOT_EXIST"
            }
            Retcode::RetMonopolyRafflePoolTimeNotMatch => {
                "RET_MONOPOLY_RAFFLE_POOL_TIME_NOT_MATCH"
            }
            Retcode::RetMonopolyRafflePoolPhaseNotMeet => {
                "RET_MONOPOLY_RAFFLE_POOL_PHASE_NOT_MEET"
            }
            Retcode::RetMonopolyRafflePoolShowTimeNotMeet => {
                "RET_MONOPOLY_RAFFLE_POOL_SHOW_TIME_NOT_MEET"
            }
            Retcode::RetMonopolyRaffleTicketNotFound => {
                "RET_MONOPOLY_RAFFLE_TICKET_NOT_FOUND"
            }
            Retcode::RetMonopolyRaffleTicketTimeNotMeet => {
                "RET_MONOPOLY_RAFFLE_TICKET_TIME_NOT_MEET"
            }
            Retcode::RetMonopolyRaffleTicketRewardAlreadyTaken => {
                "RET_MONOPOLY_RAFFLE_TICKET_REWARD_ALREADY_TAKEN"
            }
            Retcode::RetMonopolyRafflePoolNotInRaffleTime => {
                "RET_MONOPOLY_RAFFLE_POOL_NOT_IN_RAFFLE_TIME"
            }
            Retcode::RetMonopolyMbtiReportRewardAlreadyTaken => {
                "RET_MONOPOLY_MBTI_REPORT_REWARD_ALREADY_TAKEN"
            }
            Retcode::RetEvolveBuildLevelGaming => "RET_EVOLVE_BUILD_LEVEL_GAMING",
            Retcode::RetEveolveBuildLevelBanRandom => {
                "RET_EVEOLVE_BUILD_LEVEL_BAN_RANDOM"
            }
            Retcode::RetEvolveBuildFirstRewardAlreadyTaken => {
                "RET_EVOLVE_BUILD_FIRST_REWARD_ALREADY_TAKEN"
            }
            Retcode::RetEvolveBuildLevelUnfinish => "RET_EVOLVE_BUILD_LEVEL_UNFINISH",
            Retcode::RetEvolveBuildShopAbilityMaxLevel => {
                "RET_EVOLVE_BUILD_SHOP_ABILITY_MAX_LEVEL"
            }
            Retcode::RetEvolveBuildShopAbilityMinLevel => {
                "RET_EVOLVE_BUILD_SHOP_ABILITY_MIN_LEVEL"
            }
            Retcode::RetEvolveBuildShopAbilityNotGet => {
                "RET_EVOLVE_BUILD_SHOP_ABILITY_NOT_GET"
            }
            Retcode::RetEvolveBuildLevelLock => "RET_EVOLVE_BUILD_LEVEL_LOCK",
            Retcode::RetEvolveBuildExpNotEnough => "RET_EVOLVE_BUILD_EXP_NOT_ENOUGH",
            Retcode::RetEvolveBuildShopAbilityLevelError => {
                "RET_EVOLVE_BUILD_SHOP_ABILITY_LEVEL_ERROR"
            }
            Retcode::RetEvolveBuildActivityNotOpen => {
                "RET_EVOLVE_BUILD_ACTIVITY_NOT_OPEN"
            }
            Retcode::RetEvolveBuildShopAbilityEmpty => {
                "RET_EVOLVE_BUILD_SHOP_ABILITY_EMPTY"
            }
            Retcode::RetEvolveBuildLevelNotStart => "RET_EVOLVE_BUILD_LEVEL_NOT_START",
            Retcode::RetEvolveBuildShopLock => "RET_EVOLVE_BUILD_SHOP_LOCK",
            Retcode::RetEvolveBuildRewardLock => "RET_EVOLVE_BUILD_REWARD_LOCK",
            Retcode::RetEvolveBuildRewardLevelMax => "RET_EVOLVE_BUILD_REWARD_LEVEL_MAX",
            Retcode::RetEvolveBuildRewardAlreadyAllTaken => {
                "RET_EVOLVE_BUILD_REWARD_ALREADY_ALL_TAKEN"
            }
            Retcode::RetClockParkConfigError => "RET_CLOCK_PARK_CONFIG_ERROR",
            Retcode::RetClockParkEffectError => "RET_CLOCK_PARK_EFFECT_ERROR",
            Retcode::RetClockParkScriptAlreadyUnlock => {
                "RET_CLOCK_PARK_SCRIPT_ALREADY_UNLOCK"
            }
            Retcode::RetClockParkScriptUnlockConditionNotMeet => {
                "RET_CLOCK_PARK_SCRIPT_UNLOCK_CONDITION_NOT_MEET"
            }
            Retcode::RetClockParkTalentAlreadyUnlock => {
                "RET_CLOCK_PARK_TALENT_ALREADY_UNLOCK"
            }
            Retcode::RetClockParkScriptLocked => "RET_CLOCK_PARK_SCRIPT_LOCKED",
            Retcode::RetClockParkHasOngoingScript => "RET_CLOCK_PARK_HAS_ONGOING_SCRIPT",
            Retcode::RetClockParkNoOngoingScript => "RET_CLOCK_PARK_NO_ONGOING_SCRIPT",
            Retcode::RetClockParkDicePlacementError => {
                "RET_CLOCK_PARK_DICE_PLACEMENT_ERROR"
            }
            Retcode::RetClockParkMismatchStatus => "RET_CLOCK_PARK_MISMATCH_STATUS",
            Retcode::RetClockParkNoBuff => "RET_CLOCK_PARK_NO_BUFF",
            Retcode::RetClockParkSlotMachineGachaReqDuplicated => {
                "RET_CLOCK_PARK_SLOT_MACHINE_GACHA_REQ_DUPLICATED"
            }
            Retcode::RetClockParkSlotMachineCostNotEnough => {
                "RET_CLOCK_PARK_SLOT_MACHINE_COST_NOT_ENOUGH"
            }
            Retcode::RetClockParkSlotMachineGachaCntExceedLimit => {
                "RET_CLOCK_PARK_SLOT_MACHINE_GACHA_CNT_EXCEED_LIMIT"
            }
            Retcode::RetClockParkNotOpen => "RET_CLOCK_PARK_NOT_OPEN",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "RET_SUCC" => Some(Self::RetSucc),
            "RET_FAIL" => Some(Self::RetFail),
            "RET_SERVER_INTERNAL_ERROR" => Some(Self::RetServerInternalError),
            "RET_TIMEOUT" => Some(Self::RetTimeout),
            "RET_REPEATED_REQ" => Some(Self::RetRepeatedReq),
            "RET_REQ_PARA_INVALID" => Some(Self::RetReqParaInvalid),
            "RET_PLAYER_DATA_ERROR" => Some(Self::RetPlayerDataError),
            "RET_PLAYER_CLIENT_PAUSED" => Some(Self::RetPlayerClientPaused),
            "RET_FUNC_CHECK_FAILED" => Some(Self::RetFuncCheckFailed),
            "RET_FEATURE_SWITCH_CLOSED" => Some(Self::RetFeatureSwitchClosed),
            "RET_FREQ_OVER_LIMIT" => Some(Self::RetFreqOverLimit),
            "RET_SYSTEM_BUSY" => Some(Self::RetSystemBusy),
            "RET_PLAYER_NOT_ONLINE" => Some(Self::RetPlayerNotOnline),
            "RET_REPEATE_LOGIN" => Some(Self::RetRepeateLogin),
            "RET_RETRY_LOGIN" => Some(Self::RetRetryLogin),
            "RET_WAIT_LOGIN" => Some(Self::RetWaitLogin),
            "RET_NOT_IN_WHITE_LIST" => Some(Self::RetNotInWhiteList),
            "RET_IN_BLACK_LIST" => Some(Self::RetInBlackList),
            "RET_ACCOUNT_VERIFY_ERROR" => Some(Self::RetAccountVerifyError),
            "RET_ACCOUNT_PARA_ERROR" => Some(Self::RetAccountParaError),
            "RET_ANTI_ADDICT_LOGIN" => Some(Self::RetAntiAddictLogin),
            "RET_CHECK_SUM_ERROR" => Some(Self::RetCheckSumError),
            "RET_REACH_MAX_PLAYER_NUM" => Some(Self::RetReachMaxPlayerNum),
            "RET_ALREADY_REGISTERED" => Some(Self::RetAlreadyRegistered),
            "RET_GENDER_ERROR" => Some(Self::RetGenderError),
            "SET_NICKNAME_RET_CALLBACK_PROCESSING" => {
                Some(Self::SetNicknameRetCallbackProcessing)
            }
            "RET_IN_GM_BIND_ACCESS" => Some(Self::RetInGmBindAccess),
            "RET_QUEST_REWARD_ALREADY_TAKEN" => Some(Self::RetQuestRewardAlreadyTaken),
            "RET_QUEST_NOT_ACCEPT" => Some(Self::RetQuestNotAccept),
            "RET_QUEST_NOT_FINISH" => Some(Self::RetQuestNotFinish),
            "RET_QUEST_STATUS_ERROR" => Some(Self::RetQuestStatusError),
            "RET_ACHIEVEMENT_LEVEL_NOT_REACH" => Some(Self::RetAchievementLevelNotReach),
            "RET_ACHIEVEMENT_LEVEL_ALREADY_TAKEN" => {
                Some(Self::RetAchievementLevelAlreadyTaken)
            }
            "RET_AVATAR_NOT_EXIST" => Some(Self::RetAvatarNotExist),
            "RET_AVATAR_RES_EXP_NOT_ENOUGH" => Some(Self::RetAvatarResExpNotEnough),
            "RET_AVATAR_EXP_REACH_PROMOTION_LIMIT" => {
                Some(Self::RetAvatarExpReachPromotionLimit)
            }
            "RET_AVATAR_REACH_MAX_PROMOTION" => Some(Self::RetAvatarReachMaxPromotion),
            "RET_SKILLTREE_CONFIG_NOT_EXIST" => Some(Self::RetSkilltreeConfigNotExist),
            "RET_SKILLTREE_ALREADY_UNLOCK" => Some(Self::RetSkilltreeAlreadyUnlock),
            "RET_SKILLTREE_PRE_LOCKED" => Some(Self::RetSkilltreePreLocked),
            "RET_SKILLTREE_LEVEL_NOT_MEET" => Some(Self::RetSkilltreeLevelNotMeet),
            "RET_SKILLTREE_RANK_NOT_MEET" => Some(Self::RetSkilltreeRankNotMeet),
            "RET_AVATAR_DRESS_NO_EQUIPMENT" => Some(Self::RetAvatarDressNoEquipment),
            "RET_AVATAR_EXP_ITEM_NOT_EXIST" => Some(Self::RetAvatarExpItemNotExist),
            "RET_SKILLTREE_POINT_UNLOCK" => Some(Self::RetSkilltreePointUnlock),
            "RET_SKILLTREE_POINT_LEVEL_UPGRADE_NOT_MATCH" => {
                Some(Self::RetSkilltreePointLevelUpgradeNotMatch)
            }
            "RET_SKILLTREE_POINT_LEVEL_REACH_MAX" => {
                Some(Self::RetSkilltreePointLevelReachMax)
            }
            "RET_WORLD_LEVEL_NOT_MEET" => Some(Self::RetWorldLevelNotMeet),
            "RET_PLAYER_LEVEL_NOT_MEET" => Some(Self::RetPlayerLevelNotMeet),
            "RET_AVATAR_RANK_NOT_MATCH" => Some(Self::RetAvatarRankNotMatch),
            "RET_AVATAR_RANK_REACH_MAX" => Some(Self::RetAvatarRankReachMax),
            "RET_HERO_BASIC_TYPE_NOT_MATCH" => Some(Self::RetHeroBasicTypeNotMatch),
            "RET_AVATAR_PROMOTION_NOT_MEET" => Some(Self::RetAvatarPromotionNotMeet),
            "RET_PROMOTION_REWARD_CONFIG_NOT_EXIST" => {
                Some(Self::RetPromotionRewardConfigNotExist)
            }
            "RET_PROMOTION_REWARD_ALREADY_TAKEN" => {
                Some(Self::RetPromotionRewardAlreadyTaken)
            }
            "RET_AVATAR_SKIN_ITEM_NOT_EXIST" => Some(Self::RetAvatarSkinItemNotExist),
            "RET_AVATAR_SKIN_ALREADY_DRESSED" => Some(Self::RetAvatarSkinAlreadyDressed),
            "RET_AVATAR_NOT_DRESS_SKIN" => Some(Self::RetAvatarNotDressSkin),
            "RET_AVATAR_SKIN_NOT_MATCH_AVATAR" => Some(Self::RetAvatarSkinNotMatchAvatar),
            "RET_ITEM_NOT_EXIST" => Some(Self::RetItemNotExist),
            "RET_ITEM_COST_NOT_ENOUGH" => Some(Self::RetItemCostNotEnough),
            "RET_ITEM_COST_TOO_MUCH" => Some(Self::RetItemCostTooMuch),
            "RET_ITEM_NO_COST" => Some(Self::RetItemNoCost),
            "RET_ITEM_NOT_ENOUGH" => Some(Self::RetItemNotEnough),
            "RET_ITEM_INVALID" => Some(Self::RetItemInvalid),
            "RET_ITEM_CONFIG_NOT_EXIST" => Some(Self::RetItemConfigNotExist),
            "RET_SCOIN_NOT_ENOUGH" => Some(Self::RetScoinNotEnough),
            "RET_ITEM_REWARD_EXCEED_LIMIT" => Some(Self::RetItemRewardExceedLimit),
            "RET_ITEM_INVALID_USE" => Some(Self::RetItemInvalidUse),
            "RET_ITEM_USE_CONFIG_NOT_EXIST" => Some(Self::RetItemUseConfigNotExist),
            "RET_REWARD_CONFIG_NOT_EXIST" => Some(Self::RetRewardConfigNotExist),
            "RET_ITEM_EXCEED_LIMIT" => Some(Self::RetItemExceedLimit),
            "RET_ITEM_COUNT_INVALID" => Some(Self::RetItemCountInvalid),
            "RET_ITEM_USE_TARGET_TYPE_INVALID" => Some(Self::RetItemUseTargetTypeInvalid),
            "RET_ITEM_USE_SATIETY_FULL" => Some(Self::RetItemUseSatietyFull),
            "RET_ITEM_COMPOSE_NOT_EXIST" => Some(Self::RetItemComposeNotExist),
            "RET_RELIC_COMPOSE_NOT_EXIST" => Some(Self::RetRelicComposeNotExist),
            "RET_ITEM_CAN_NOT_SELL" => Some(Self::RetItemCanNotSell),
            "RET_ITEM_SELL_EXCEDD_LIMIT" => Some(Self::RetItemSellExceddLimit),
            "RET_ITEM_NOT_IN_COST_LIST" => Some(Self::RetItemNotInCostList),
            "RET_ITEM_SPECIAL_COST_NOT_ENOUGH" => Some(Self::RetItemSpecialCostNotEnough),
            "RET_ITEM_SPECIAL_COST_TOO_MUCH" => Some(Self::RetItemSpecialCostTooMuch),
            "RET_ITEM_FORMULA_NOT_EXIST" => Some(Self::RetItemFormulaNotExist),
            "RET_ITEM_AUTO_GIFT_OPTIONAL_NOT_EXIST" => {
                Some(Self::RetItemAutoGiftOptionalNotExist)
            }
            "RET_RELIC_COMPOSE_RELIC_INVALID" => Some(Self::RetRelicComposeRelicInvalid),
            "RET_RELIC_COMPOSE_MAIN_AFFIX_ID_INVALID" => {
                Some(Self::RetRelicComposeMainAffixIdInvalid)
            }
            "RET_RELIC_COMPOSE_WRONG_FORMULA_TYPE" => {
                Some(Self::RetRelicComposeWrongFormulaType)
            }
            "RET_RELIC_COMPOSE_RELIC_NOT_EXIST" => {
                Some(Self::RetRelicComposeRelicNotExist)
            }
            "RET_RELIC_COMPOSE_BLACK_GOLD_COUNT_INVALID" => {
                Some(Self::RetRelicComposeBlackGoldCountInvalid)
            }
            "RET_RELIC_COMPOSE_BLACK_GOLD_NOT_NEED" => {
                Some(Self::RetRelicComposeBlackGoldNotNeed)
            }
            "RET_MONTH_CARD_CANNOT_USE" => Some(Self::RetMonthCardCannotUse),
            "RET_ITEM_REWARD_EXCEED_DISAPPEAR" => {
                Some(Self::RetItemRewardExceedDisappear)
            }
            "RET_ITEM_NEED_RECYCLE" => Some(Self::RetItemNeedRecycle),
            "RET_ITEM_COMPOSE_EXCEED_LIMIT" => Some(Self::RetItemComposeExceedLimit),
            "RET_ITEM_CAN_NOT_DESTROY" => Some(Self::RetItemCanNotDestroy),
            "RET_ITEM_ALREADY_MARK" => Some(Self::RetItemAlreadyMark),
            "RET_ITEM_MARK_EXCEED_LIMIT" => Some(Self::RetItemMarkExceedLimit),
            "RET_ITEM_NOT_MARK" => Some(Self::RetItemNotMark),
            "RET_ITEN_TURN_FOOD_NOT_SET" => Some(Self::RetItenTurnFoodNotSet),
            "RET_ITEM_TURN_FOOD_ALREADY_SET" => Some(Self::RetItemTurnFoodAlreadySet),
            "RET_ITEM_TURN_FOOD_CONSUME_TYPE_ERROR" => {
                Some(Self::RetItemTurnFoodConsumeTypeError)
            }
            "RET_ITEM_TURN_FOOD_SWITCH_ALREADY_OPEN" => {
                Some(Self::RetItemTurnFoodSwitchAlreadyOpen)
            }
            "RET_ITEM_TURN_FOOD_SWITCH_ALREADY_CLOSE" => {
                Some(Self::RetItemTurnFoodSwitchAlreadyClose)
            }
            "RET_HCOIN_EXCHANGE_TOO_MUCH" => Some(Self::RetHcoinExchangeTooMuch),
            "RET_ITEM_TURN_FOOD_SCENE_TYPE_ERROR" => {
                Some(Self::RetItemTurnFoodSceneTypeError)
            }
            "RET_EQUIPMENT_ALREADY_DRESSED" => Some(Self::RetEquipmentAlreadyDressed),
            "RET_EQUIPMENT_NOT_EXIST" => Some(Self::RetEquipmentNotExist),
            "RET_EQUIPMENT_REACH_LEVEL_LIMIT" => Some(Self::RetEquipmentReachLevelLimit),
            "RET_EQUIPMENT_CONSUME_SELF" => Some(Self::RetEquipmentConsumeSelf),
            "RET_EQUIPMENT_ALREADY_LOCKED" => Some(Self::RetEquipmentAlreadyLocked),
            "RET_EQUIPMENT_ALREADY_UNLOCKED" => Some(Self::RetEquipmentAlreadyUnlocked),
            "RET_EQUIPMENT_LOCKED" => Some(Self::RetEquipmentLocked),
            "RET_EQUIPMENT_SELECT_NUM_OVER_LIMIT" => {
                Some(Self::RetEquipmentSelectNumOverLimit)
            }
            "RET_EQUIPMENT_RANK_UP_MUST_CONSUME_SAME_TID" => {
                Some(Self::RetEquipmentRankUpMustConsumeSameTid)
            }
            "RET_EQUIPMENT_PROMOTION_REACH_MAX" => {
                Some(Self::RetEquipmentPromotionReachMax)
            }
            "RET_EQUIPMENT_RANK_UP_REACH_MAX" => Some(Self::RetEquipmentRankUpReachMax),
            "RET_EQUIPMENT_LEVEL_REACH_MAX" => Some(Self::RetEquipmentLevelReachMax),
            "RET_EQUIPMENT_EXCEED_LIMIT" => Some(Self::RetEquipmentExceedLimit),
            "RET_RELIC_NOT_EXIST" => Some(Self::RetRelicNotExist),
            "RET_RELIC_REACH_LEVEL_LIMIT" => Some(Self::RetRelicReachLevelLimit),
            "RET_RELIC_CONSUME_SELF" => Some(Self::RetRelicConsumeSelf),
            "RET_RELIC_ALREADY_DRESSED" => Some(Self::RetRelicAlreadyDressed),
            "RET_RELIC_LOCKED" => Some(Self::RetRelicLocked),
            "RET_RELIC_ALREADY_LOCKED" => Some(Self::RetRelicAlreadyLocked),
            "RET_RELIC_ALREADY_UNLOCKED" => Some(Self::RetRelicAlreadyUnlocked),
            "RET_RELIC_LEVEL_IS_NOT_ZERO" => Some(Self::RetRelicLevelIsNotZero),
            "RET_UNIQUE_ID_REPEATED" => Some(Self::RetUniqueIdRepeated),
            "RET_EQUIPMENT_LEVEL_NOT_MEET" => Some(Self::RetEquipmentLevelNotMeet),
            "RET_EQUIPMENT_ITEM_NOT_IN_COST_LIST" => {
                Some(Self::RetEquipmentItemNotInCostList)
            }
            "RET_EQUIPMENT_LEVEL_GREATER_THAN_ONE" => {
                Some(Self::RetEquipmentLevelGreaterThanOne)
            }
            "RET_EQUIPMENT_ALREADY_RANKED" => Some(Self::RetEquipmentAlreadyRanked),
            "RET_RELIC_EXCEED_LIMIT" => Some(Self::RetRelicExceedLimit),
            "RET_RELIC_ALREADY_DISCARDED" => Some(Self::RetRelicAlreadyDiscarded),
            "RET_RELIC_ALREADY_UNDISCARDED" => Some(Self::RetRelicAlreadyUndiscarded),
            "RET_EQUIPMENT_BATCH_LOCK_TOO_FAST" => {
                Some(Self::RetEquipmentBatchLockTooFast)
            }
            "RET_LINEUP_INVALID_INDEX" => Some(Self::RetLineupInvalidIndex),
            "RET_LINEUP_INVALID_MEMBER_POS" => Some(Self::RetLineupInvalidMemberPos),
            "RET_LINEUP_SWAP_NOT_EXIST" => Some(Self::RetLineupSwapNotExist),
            "RET_LINEUP_AVATAR_ALREADY_IN" => Some(Self::RetLineupAvatarAlreadyIn),
            "RET_LINEUP_CREATE_AVATAR_ERROR" => Some(Self::RetLineupCreateAvatarError),
            "RET_LINEUP_AVATAR_INIT_ERROR" => Some(Self::RetLineupAvatarInitError),
            "RET_LINEUP_NOT_EXIST" => Some(Self::RetLineupNotExist),
            "RET_LINEUP_ONLY_ONE_MEMBER" => Some(Self::RetLineupOnlyOneMember),
            "RET_LINEUP_SAME_LEADER_SLOT" => Some(Self::RetLineupSameLeaderSlot),
            "RET_LINEUP_NO_LEADER_SELECT" => Some(Self::RetLineupNoLeaderSelect),
            "RET_LINEUP_SWAP_SAME_SLOT" => Some(Self::RetLineupSwapSameSlot),
            "RET_LINEUP_AVATAR_NOT_EXIST" => Some(Self::RetLineupAvatarNotExist),
            "RET_LINEUP_TRIAL_AVATAR_CAN_NOT_QUIT" => {
                Some(Self::RetLineupTrialAvatarCanNotQuit)
            }
            "RET_LINEUP_VIRTUAL_LINEUP_PLANE_NOT_MATCH" => {
                Some(Self::RetLineupVirtualLineupPlaneNotMatch)
            }
            "RET_LINEUP_NOT_VALID_LEADER" => Some(Self::RetLineupNotValidLeader),
            "RET_LINEUP_SAME_INDEX" => Some(Self::RetLineupSameIndex),
            "RET_LINEUP_IS_EMPTY" => Some(Self::RetLineupIsEmpty),
            "RET_LINEUP_NAME_FORMAT_ERROR" => Some(Self::RetLineupNameFormatError),
            "RET_LINEUP_TYPE_NOT_MATCH" => Some(Self::RetLineupTypeNotMatch),
            "RET_LINEUP_REPLACE_ALL_FAILED" => Some(Self::RetLineupReplaceAllFailed),
            "RET_LINEUP_NOT_ALLOW_EDIT" => Some(Self::RetLineupNotAllowEdit),
            "RET_LINEUP_AVATAR_IS_ALIVE" => Some(Self::RetLineupAvatarIsAlive),
            "RET_LINEUP_ASSIST_HAS_ONLY_MEMBER" => {
                Some(Self::RetLineupAssistHasOnlyMember)
            }
            "RET_LINEUP_ASSIST_CANNOT_SWITCH" => Some(Self::RetLineupAssistCannotSwitch),
            "RET_LINEUP_AVATAR_TYPE_INVALID" => Some(Self::RetLineupAvatarTypeInvalid),
            "RET_LINEUP_NAME_UTF8_ERROR" => Some(Self::RetLineupNameUtf8Error),
            "RET_LINEUP_LEADER_LOCK" => Some(Self::RetLineupLeaderLock),
            "RET_LINEUP_STORY_LINE_NOT_MATCH" => Some(Self::RetLineupStoryLineNotMatch),
            "RET_LINEUP_AVATAR_LOCK" => Some(Self::RetLineupAvatarLock),
            "RET_LINEUP_AVATAR_INVALID" => Some(Self::RetLineupAvatarInvalid),
            "RET_LINEUP_AVATAR_ALREADY_INIT" => Some(Self::RetLineupAvatarAlreadyInit),
            "RET_MAIL_NOT_EXIST" => Some(Self::RetMailNotExist),
            "RET_MAIL_RANGE_INVALID" => Some(Self::RetMailRangeInvalid),
            "RET_MAIL_MAIL_ID_INVALID" => Some(Self::RetMailMailIdInvalid),
            "RET_MAIL_NO_MAIL_TAKE_ATTACHMENT" => Some(Self::RetMailNoMailTakeAttachment),
            "RET_MAIL_NO_MAIL_TO_DEL" => Some(Self::RetMailNoMailToDel),
            "RET_MAIL_TYPE_INVALID" => Some(Self::RetMailTypeInvalid),
            "RET_MAIL_PARA_INVALID" => Some(Self::RetMailParaInvalid),
            "RET_MAIL_ATTACHEMENT_INVALID" => Some(Self::RetMailAttachementInvalid),
            "RET_MAIL_TICKET_INVALID" => Some(Self::RetMailTicketInvalid),
            "RET_MAIL_TICKET_REPEATED" => Some(Self::RetMailTicketRepeated),
            "RET_STAGE_SETTLE_ERROR" => Some(Self::RetStageSettleError),
            "RET_STAGE_CONFIG_NOT_EXIST" => Some(Self::RetStageConfigNotExist),
            "RET_STAGE_NOT_FOUND" => Some(Self::RetStageNotFound),
            "RET_STAGE_COCOON_PROP_NOT_VALID" => Some(Self::RetStageCocoonPropNotValid),
            "RET_STAGE_COCOON_WAVE_NOT_VALID" => Some(Self::RetStageCocoonWaveNotValid),
            "RET_STAGE_PROP_ID_NOT_EQUAL" => Some(Self::RetStagePropIdNotEqual),
            "RET_STAGE_COCOON_WAVE_OVER" => Some(Self::RetStageCocoonWaveOver),
            "RET_STAGE_WEEK_COCOON_OVER_CNT" => Some(Self::RetStageWeekCocoonOverCnt),
            "RET_STAGE_COCOON_NOT_OPEN" => Some(Self::RetStageCocoonNotOpen),
            "RET_STAGE_TRIAL_NOT_OPEN" => Some(Self::RetStageTrialNotOpen),
            "RET_STAGE_FARM_NOT_OPEN" => Some(Self::RetStageFarmNotOpen),
            "RET_STAGE_FARM_TYPE_ERROR" => Some(Self::RetStageFarmTypeError),
            "RET_CHAPTER_LOCK" => Some(Self::RetChapterLock),
            "RET_CHAPTER_CHALLENGE_NUM_NOT_ENOUGH" => {
                Some(Self::RetChapterChallengeNumNotEnough)
            }
            "RET_CHAPTER_REWARD_ID_NOT_EXIST" => Some(Self::RetChapterRewardIdNotExist),
            "RET_CHAPTER_REWARD_ALREADY_TAKEN" => {
                Some(Self::RetChapterRewardAlreadyTaken)
            }
            "RET_BATTLE_STAGE_NOT_MATCH" => Some(Self::RetBattleStageNotMatch),
            "RET_IN_BATTLE_NOW" => Some(Self::RetInBattleNow),
            "RET_BATTLE_CHEAT" => Some(Self::RetBattleCheat),
            "RET_BATTLE_FAIL" => Some(Self::RetBattleFail),
            "RET_BATTLE_NO_LINEUP" => Some(Self::RetBattleNoLineup),
            "RET_BATTLE_LINEUP_EMPTY" => Some(Self::RetBattleLineupEmpty),
            "RET_BATTLE_VERSION_NOT_MATCH" => Some(Self::RetBattleVersionNotMatch),
            "RET_BATTLE_QUIT_BY_SERVER" => Some(Self::RetBattleQuitByServer),
            "RET_IN_BATTLE_CHECK" => Some(Self::RetInBattleCheck),
            "RET_BATTLE_CHECK_NEED_RETRY" => Some(Self::RetBattleCheckNeedRetry),
            "RET_BATTLE_COST_TIME_CHECK_FAIL" => Some(Self::RetBattleCostTimeCheckFail),
            "RET_LACK_EXCHANGE_STAMINA_TIMES" => Some(Self::RetLackExchangeStaminaTimes),
            "RET_LACK_STAMINA" => Some(Self::RetLackStamina),
            "RET_STAMINA_FULL" => Some(Self::RetStaminaFull),
            "RET_AUTHKEY_SIGN_TYPE_ERROR" => Some(Self::RetAuthkeySignTypeError),
            "RET_AUTHKEY_SIGN_VER_ERROR" => Some(Self::RetAuthkeySignVerError),
            "RET_NICKNAME_FORMAT_ERROR" => Some(Self::RetNicknameFormatError),
            "RET_SENSITIVE_WORDS" => Some(Self::RetSensitiveWords),
            "RET_LEVEL_REWARD_HAS_TAKEN" => Some(Self::RetLevelRewardHasTaken),
            "RET_LEVEL_REWARD_LEVEL_ERROR" => Some(Self::RetLevelRewardLevelError),
            "RET_LANGUAGE_INVALID" => Some(Self::RetLanguageInvalid),
            "RET_NICKNAME_IN_CD" => Some(Self::RetNicknameInCd),
            "RET_GAMEPLAY_BIRTHDAY_INVALID" => Some(Self::RetGameplayBirthdayInvalid),
            "RET_GAMEPLAY_BIRTHDAY_ALREADY_SET" => {
                Some(Self::RetGameplayBirthdayAlreadySet)
            }
            "RET_NICKNAME_UTF8_ERROR" => Some(Self::RetNicknameUtf8Error),
            "RET_NICKNAME_DIGIT_LIMIT_ERROR" => Some(Self::RetNicknameDigitLimitError),
            "RET_SENSITIVE_WORDS_PLATFORM_ERROR" => {
                Some(Self::RetSensitiveWordsPlatformError)
            }
            "RET_PLAYER_SETTING_TYPE_INVALID" => Some(Self::RetPlayerSettingTypeInvalid),
            "RET_MAZE_LACK_TICKET" => Some(Self::RetMazeLackTicket),
            "RET_MAZE_NOT_UNLOCK" => Some(Self::RetMazeNotUnlock),
            "RET_MAZE_NO_ABILITY" => Some(Self::RetMazeNoAbility),
            "RET_MAZE_NO_PLANE" => Some(Self::RetMazeNoPlane),
            "RET_MAZE_MAP_NOT_EXIST" => Some(Self::RetMazeMapNotExist),
            "RET_MAZE_MP_NOT_ENOUGH" => Some(Self::RetMazeMpNotEnough),
            "RET_SPRING_NOT_ENABLE" => Some(Self::RetSpringNotEnable),
            "RET_SPRING_TOO_FAR" => Some(Self::RetSpringTooFar),
            "RET_NOT_IN_MAZE" => Some(Self::RetNotInMaze),
            "RET_MAZE_TIME_OF_DAY_TYPE_ERROR" => Some(Self::RetMazeTimeOfDayTypeError),
            "RET_SCENE_TRANSFER_LOCKED_BY_TASK" => {
                Some(Self::RetSceneTransferLockedByTask)
            }
            "RET_PLOT_NOT_UNLOCK" => Some(Self::RetPlotNotUnlock),
            "RET_MISSION_NOT_EXIST" => Some(Self::RetMissionNotExist),
            "RET_MISSION_ALREADY_DONE" => Some(Self::RetMissionAlreadyDone),
            "RET_DAILY_TASK_NOT_FINISH" => Some(Self::RetDailyTaskNotFinish),
            "RET_DAILY_TASK_REWARD_HAS_TAKEN" => Some(Self::RetDailyTaskRewardHasTaken),
            "RET_MISSION_NOT_FINISH" => Some(Self::RetMissionNotFinish),
            "RET_MISSION_NOT_DOING" => Some(Self::RetMissionNotDoing),
            "RET_MISSION_FINISH_WAY_NOT_MATCH" => Some(Self::RetMissionFinishWayNotMatch),
            "RET_MISSION_SCENE_NOT_MATCH" => Some(Self::RetMissionSceneNotMatch),
            "RET_MISSION_CUSTOM_VALUE_NOT_VALID" => {
                Some(Self::RetMissionCustomValueNotValid)
            }
            "RET_MISSION_SUB_MISSION_NOT_MATCH" => {
                Some(Self::RetMissionSubMissionNotMatch)
            }
            "RET_ADVENTURE_MAP_NOT_EXIST" => Some(Self::RetAdventureMapNotExist),
            "RET_SCENE_ENTITY_NOT_EXIST" => Some(Self::RetSceneEntityNotExist),
            "RET_NOT_IN_SCENE" => Some(Self::RetNotInScene),
            "RET_SCENE_MONSTER_NOT_EXIST" => Some(Self::RetSceneMonsterNotExist),
            "RET_INTERACT_CONFIG_NOT_EXIST" => Some(Self::RetInteractConfigNotExist),
            "RET_UNSUPPORTED_PROP_STATE" => Some(Self::RetUnsupportedPropState),
            "RET_SCENE_ENTRY_ID_NOT_MATCH" => Some(Self::RetSceneEntryIdNotMatch),
            "RET_SCENE_ENTITY_MOVE_CHECK_FAILED" => {
                Some(Self::RetSceneEntityMoveCheckFailed)
            }
            "RET_ASSIST_MONSTER_COUNT_LIMIT" => Some(Self::RetAssistMonsterCountLimit),
            "RET_SCENE_USE_SKILL_FAIL" => Some(Self::RetSceneUseSkillFail),
            "RET_PROP_IS_HIDDEN" => Some(Self::RetPropIsHidden),
            "RET_LOADING_SUCC_ALREADY" => Some(Self::RetLoadingSuccAlready),
            "RET_SCENE_ENTITY_TYPE_INVALID" => Some(Self::RetSceneEntityTypeInvalid),
            "RET_INTERACT_TYPE_INVALID" => Some(Self::RetInteractTypeInvalid),
            "RET_INTERACT_NOT_IN_REGION" => Some(Self::RetInteractNotInRegion),
            "RET_INTERACT_SUB_TYPE_INVALID" => Some(Self::RetInteractSubTypeInvalid),
            "RET_NOT_LEADER_ENTITY" => Some(Self::RetNotLeaderEntity),
            "RET_MONSTER_IS_NOT_FARM_ELEMENT" => Some(Self::RetMonsterIsNotFarmElement),
            "RET_MONSTER_CONFIG_NOT_EXIST" => Some(Self::RetMonsterConfigNotExist),
            "RET_AVATAR_HP_ALREADY_FULL" => Some(Self::RetAvatarHpAlreadyFull),
            "RET_CUR_INTERACT_ENTITY_NOT_MATCH" => {
                Some(Self::RetCurInteractEntityNotMatch)
            }
            "RET_PLANE_TYPE_NOT_ALLOW" => Some(Self::RetPlaneTypeNotAllow),
            "RET_GROUP_NOT_EXIST" => Some(Self::RetGroupNotExist),
            "RET_GROUP_SAVE_DATA_IN_CD" => Some(Self::RetGroupSaveDataInCd),
            "RET_GROUP_SAVE_LENGH_REACH_MAX" => Some(Self::RetGroupSaveLenghReachMax),
            "RET_RECENT_ELEMENT_NOT_EXIST" => Some(Self::RetRecentElementNotExist),
            "RET_RECENT_ELEMENT_STAGE_NOT_MATCH" => {
                Some(Self::RetRecentElementStageNotMatch)
            }
            "RET_SCENE_POSITION_VERSION_NOT_MATCH" => {
                Some(Self::RetScenePositionVersionNotMatch)
            }
            "RET_GAMEPLAY_COUNTER_NOT_EXIST" => Some(Self::RetGameplayCounterNotExist),
            "RET_GAMEPLAY_COUNTER_NOT_ENOUGH" => Some(Self::RetGameplayCounterNotEnough),
            "RET_GROUP_STATE_NOT_MATCH" => Some(Self::RetGroupStateNotMatch),
            "RET_SCENE_ENTITY_POS_NOT_MATCH" => Some(Self::RetSceneEntityPosNotMatch),
            "RET_GROUP_STATE_CUSTOM_SAVE_DATA_OFF" => {
                Some(Self::RetGroupStateCustomSaveDataOff)
            }
            "RET_BUY_TIMES_LIMIT" => Some(Self::RetBuyTimesLimit),
            "RET_BUY_LIMIT_TYPE" => Some(Self::RetBuyLimitType),
            "RET_SHOP_NOT_OPEN" => Some(Self::RetShopNotOpen),
            "RET_GOODS_NOT_OPEN" => Some(Self::RetGoodsNotOpen),
            "RET_CITY_LEVEL_REWARD_TAKEN" => Some(Self::RetCityLevelRewardTaken),
            "RET_CITY_LEVEL_NOT_MEET" => Some(Self::RetCityLevelNotMeet),
            "RET_SINGLE_BUY_LIMIT" => Some(Self::RetSingleBuyLimit),
            "RET_TUTORIAL_NOT_UNLOCK" => Some(Self::RetTutorialNotUnlock),
            "RET_TUTORIAL_UNLOCK_ALREADY" => Some(Self::RetTutorialUnlockAlready),
            "RET_TUTORIAL_FINISH_ALREADY" => Some(Self::RetTutorialFinishAlready),
            "RET_TUTORIAL_PRE_NOT_UNLOCK" => Some(Self::RetTutorialPreNotUnlock),
            "RET_TUTORIAL_PLAYER_LEVEL_NOT_MATCH" => {
                Some(Self::RetTutorialPlayerLevelNotMatch)
            }
            "RET_TUTORIAL_TUTORIAL_NOT_FOUND" => Some(Self::RetTutorialTutorialNotFound),
            "RET_CHALLENGE_NOT_EXIST" => Some(Self::RetChallengeNotExist),
            "RET_CHALLENGE_NOT_UNLOCK" => Some(Self::RetChallengeNotUnlock),
            "RET_CHALLENGE_ALREADY" => Some(Self::RetChallengeAlready),
            "RET_CHALLENGE_LINEUP_EDIT_FORBIDDEN" => {
                Some(Self::RetChallengeLineupEditForbidden)
            }
            "RET_CHALLENGE_LINEUP_EMPTY" => Some(Self::RetChallengeLineupEmpty),
            "RET_CHALLENGE_NOT_DOING" => Some(Self::RetChallengeNotDoing),
            "RET_CHALLENGE_NOT_FINISH" => Some(Self::RetChallengeNotFinish),
            "RET_CHALLENGE_TARGET_NOT_FINISH" => Some(Self::RetChallengeTargetNotFinish),
            "RET_CHALLENGE_TARGET_REWARD_TAKEN" => {
                Some(Self::RetChallengeTargetRewardTaken)
            }
            "RET_CHALLENGE_TIME_NOT_VALID" => Some(Self::RetChallengeTimeNotValid),
            "RET_CHALLENGE_STARS_COUNT_NOT_MEET" => {
                Some(Self::RetChallengeStarsCountNotMeet)
            }
            "RET_CHALLENGE_STARS_REWARD_TAKEN" => {
                Some(Self::RetChallengeStarsRewardTaken)
            }
            "RET_CHALLENGE_STARS_NOT_EXIST" => Some(Self::RetChallengeStarsNotExist),
            "RET_CHALLENGE_CUR_SCENE_NOT_ENTRY_FLOOR" => {
                Some(Self::RetChallengeCurSceneNotEntryFloor)
            }
            "RET_BASIC_TYPE_ALREADY" => Some(Self::RetBasicTypeAlready),
            "RET_NO_BASIC_TYPE" => Some(Self::RetNoBasicType),
            "RET_NOT_CHOOSE_BASIC_TYPE" => Some(Self::RetNotChooseBasicType),
            "RET_NOT_FUNC_CLOSE" => Some(Self::RetNotFuncClose),
            "RET_NOT_CHOOSE_GENDER" => Some(Self::RetNotChooseGender),
            "RET_ROGUE_STATUS_NOT_MATCH" => Some(Self::RetRogueStatusNotMatch),
            "RET_ROGUE_SELECT_BUFF_NOT_EXIST" => Some(Self::RetRogueSelectBuffNotExist),
            "RET_ROGUE_COIN_NOT_ENOUGH" => Some(Self::RetRogueCoinNotEnough),
            "RET_ROGUE_STAMINA_NOT_ENOUGH" => Some(Self::RetRogueStaminaNotEnough),
            "RET_ROGUE_APPRAISAL_COUNT_NOT_ENOUGH" => {
                Some(Self::RetRogueAppraisalCountNotEnough)
            }
            "RET_ROGUE_PROP_ALREADY_USED" => Some(Self::RetRoguePropAlreadyUsed),
            "RET_ROGUE_RECORD_ALREADY_SAVED" => Some(Self::RetRogueRecordAlreadySaved),
            "RET_ROGUE_ROLL_BUFF_MAX_COUNT" => Some(Self::RetRogueRollBuffMaxCount),
            "RET_ROGUE_PICK_AVATAR_INVALID" => Some(Self::RetRoguePickAvatarInvalid),
            "RET_ROGUE_QUEST_EXPIRE" => Some(Self::RetRogueQuestExpire),
            "RET_ROGUE_QUEST_REWARD_ALREADY" => Some(Self::RetRogueQuestRewardAlready),
            "RET_ROGUE_REVIVE_COUNT_NOT_ENOUGH" => {
                Some(Self::RetRogueReviveCountNotEnough)
            }
            "RET_ROGUE_AREA_INVALID" => Some(Self::RetRogueAreaInvalid),
            "RET_ROGUE_SCORE_REWARD_POOL_INVALID" => {
                Some(Self::RetRogueScoreRewardPoolInvalid)
            }
            "RET_ROGUE_SCORE_REWARD_ROW_INVALID" => {
                Some(Self::RetRogueScoreRewardRowInvalid)
            }
            "RET_ROGUE_AEON_LEVEL_NOT_MEET" => Some(Self::RetRogueAeonLevelNotMeet),
            "RET_ROGUE_AEON_LEVEL_REWARD_ALREADY_TAKEN" => {
                Some(Self::RetRogueAeonLevelRewardAlreadyTaken)
            }
            "RET_ROGUE_AEON_CONFIG_NOT_EXIST" => Some(Self::RetRogueAeonConfigNotExist),
            "RET_ROGUE_TRIAL_AVATAR_INVALID" => Some(Self::RetRogueTrialAvatarInvalid),
            "RET_ROGUE_HANDBOOK_REWARD_ALREADY_TAKEN" => {
                Some(Self::RetRogueHandbookRewardAlreadyTaken)
            }
            "RET_ROGUE_ROOM_TYPE_NOT_MATCH" => Some(Self::RetRogueRoomTypeNotMatch),
            "RET_ROGUE_SHOP_GOOD_NOT_FOUND" => Some(Self::RetRogueShopGoodNotFound),
            "RET_ROGUE_SHOP_GOOD_ALREADY_BOUGHT" => {
                Some(Self::RetRogueShopGoodAlreadyBought)
            }
            "RET_ROGUE_SHOP_GOOD_ALREADY_OWN" => Some(Self::RetRogueShopGoodAlreadyOwn),
            "RET_ROGUE_SHOP_MIRACLE_NOT_EXIST" => Some(Self::RetRogueShopMiracleNotExist),
            "RET_ROGUE_SHOP_NOT_EXIST" => Some(Self::RetRogueShopNotExist),
            "RET_ROGUE_SHOP_CANNOT_REFRESH" => Some(Self::RetRogueShopCannotRefresh),
            "RET_MISSION_EVENT_CONFIG_NOT_EXIST" => {
                Some(Self::RetMissionEventConfigNotExist)
            }
            "RET_MISSION_EVENT_NOT_CLIENT" => Some(Self::RetMissionEventNotClient),
            "RET_MISSION_EVENT_FINISHED" => Some(Self::RetMissionEventFinished),
            "RET_MISSION_EVENT_DOING" => Some(Self::RetMissionEventDoing),
            "RET_HAS_CHALLENGE_MISSION_EVENT" => Some(Self::RetHasChallengeMissionEvent),
            "RET_NOT_CHALLENGE_MISSION_EVENT" => Some(Self::RetNotChallengeMissionEvent),
            "RET_GACHA_ID_NOT_EXIST" => Some(Self::RetGachaIdNotExist),
            "RET_GACHA_NUM_INVALID" => Some(Self::RetGachaNumInvalid),
            "RET_GACHA_FIRST_GACHA_MUST_ONE" => Some(Self::RetGachaFirstGachaMustOne),
            "RET_GACHA_REQ_DUPLICATED" => Some(Self::RetGachaReqDuplicated),
            "RET_GACHA_NOT_IN_SCHEDULE" => Some(Self::RetGachaNotInSchedule),
            "RET_GACHA_NEWBIE_CLOSE" => Some(Self::RetGachaNewbieClose),
            "RET_GACHA_TODAY_LIMITED" => Some(Self::RetGachaTodayLimited),
            "RET_GACHA_NOT_SUPPORT" => Some(Self::RetGachaNotSupport),
            "RET_GACHA_CEILING_NOT_ENOUGH" => Some(Self::RetGachaCeilingNotEnough),
            "RET_GACHA_CEILING_CLOSE" => Some(Self::RetGachaCeilingClose),
            "RET_NOT_IN_RAID" => Some(Self::RetNotInRaid),
            "RET_RAID_DOING" => Some(Self::RetRaidDoing),
            "RET_NOT_PROP" => Some(Self::RetNotProp),
            "RET_RAID_ID_NOT_MATCH" => Some(Self::RetRaidIdNotMatch),
            "RET_RAID_RESTART_NOT_MATCH" => Some(Self::RetRaidRestartNotMatch),
            "RET_RAID_LIMIT" => Some(Self::RetRaidLimit),
            "RET_RAID_AVATAR_LIST_EMPTY" => Some(Self::RetRaidAvatarListEmpty),
            "RET_RAID_AVATAR_NOT_EXIST" => Some(Self::RetRaidAvatarNotExist),
            "RET_CHALLENGE_RAID_REWARD_ALREADY" => {
                Some(Self::RetChallengeRaidRewardAlready)
            }
            "RET_CHALLENGE_RAID_SCORE_NOT_REACH" => {
                Some(Self::RetChallengeRaidScoreNotReach)
            }
            "RET_CHALLENGE_RAID_NOT_OPEN" => Some(Self::RetChallengeRaidNotOpen),
            "RET_RAID_FINISHED" => Some(Self::RetRaidFinished),
            "RET_RAID_WORLD_LEVEL_NOT_LOCK" => Some(Self::RetRaidWorldLevelNotLock),
            "RET_RAID_CANNOT_USE_ASSIST" => Some(Self::RetRaidCannotUseAssist),
            "RET_RAID_AVATAR_NOT_MATCH" => Some(Self::RetRaidAvatarNotMatch),
            "RET_RAID_CAN_NOT_SAVE" => Some(Self::RetRaidCanNotSave),
            "RET_RAID_NO_SAVE" => Some(Self::RetRaidNoSave),
            "RET_ACTIVITY_RAID_NOT_OPEN" => Some(Self::RetActivityRaidNotOpen),
            "RET_RAID_AVATAR_CAPTAIN_NOT_EXIST" => {
                Some(Self::RetRaidAvatarCaptainNotExist)
            }
            "RET_RAID_STORY_LINE_NOT_MATCH" => Some(Self::RetRaidStoryLineNotMatch),
            "RET_TALK_EVENT_ALREADY_TAKEN" => Some(Self::RetTalkEventAlreadyTaken),
            "RET_NPC_ALREADY_MEET" => Some(Self::RetNpcAlreadyMeet),
            "RET_NPC_NOT_IN_CONFIG" => Some(Self::RetNpcNotInConfig),
            "RET_DIALOGUE_GROUP_DISMATCH" => Some(Self::RetDialogueGroupDismatch),
            "RET_DIALOGUE_EVENT_INVALID" => Some(Self::RetDialogueEventInvalid),
            "RET_TALK_EVENT_TAKE_PROTO_NOT_MATCH" => {
                Some(Self::RetTalkEventTakeProtoNotMatch)
            }
            "RET_TALK_EVENT_NOT_VALID" => Some(Self::RetTalkEventNotValid),
            "RET_EXPEDITION_CONFIG_NOT_EXIST" => Some(Self::RetExpeditionConfigNotExist),
            "RET_EXPEDITION_REWARD_CONFIG_NOT_EXIST" => {
                Some(Self::RetExpeditionRewardConfigNotExist)
            }
            "RET_EXPEDITION_NOT_UNLOCKED" => Some(Self::RetExpeditionNotUnlocked),
            "RET_EXPEDITION_ALREADY_ACCEPTED" => Some(Self::RetExpeditionAlreadyAccepted),
            "RET_EXPEDITION_REPEATED_AVATAR" => Some(Self::RetExpeditionRepeatedAvatar),
            "RET_AVATAR_ALREADY_DISPATCHED" => Some(Self::RetAvatarAlreadyDispatched),
            "RET_EXPEDITION_NOT_ACCEPTED" => Some(Self::RetExpeditionNotAccepted),
            "RET_EXPEDITION_NOT_FINISH" => Some(Self::RetExpeditionNotFinish),
            "RET_EXPEDITION_ALREADY_FINISH" => Some(Self::RetExpeditionAlreadyFinish),
            "RET_EXPEDITION_TEAM_COUNT_LIMIT" => Some(Self::RetExpeditionTeamCountLimit),
            "RET_EXPEDITION_AVATAR_NUM_NOT_MATCH" => {
                Some(Self::RetExpeditionAvatarNumNotMatch)
            }
            "RET_EXPEDITION_NOT_OPEN" => Some(Self::RetExpeditionNotOpen),
            "RET_EXPEDITION_FRIEND_AVATAR_NOT_VALID" => {
                Some(Self::RetExpeditionFriendAvatarNotValid)
            }
            "RET_EXPEDITION_NOT_PUBLISHED" => Some(Self::RetExpeditionNotPublished),
            "RET_LOGIN_ACTIVITY_HAS_TAKEN" => Some(Self::RetLoginActivityHasTaken),
            "RET_LOGIN_ACTIVITY_DAYS_LACK" => Some(Self::RetLoginActivityDaysLack),
            "RET_TRIAL_ACTIVITY_REWARD_ALREADY_TAKE" => {
                Some(Self::RetTrialActivityRewardAlreadyTake)
            }
            "RET_TRIAL_ACTIVITY_STAGE_NOT_FINISH" => {
                Some(Self::RetTrialActivityStageNotFinish)
            }
            "RET_MONSTER_RESEARCH_ACTIVITY_HAS_TAKEN" => {
                Some(Self::RetMonsterResearchActivityHasTaken)
            }
            "RET_MONSTER_RESEARCH_ACTIVITY_MATERIAL_NOT_SUBMITTED" => {
                Some(Self::RetMonsterResearchActivityMaterialNotSubmitted)
            }
            "RET_MONSTER_RESEARCH_ACTIVITY_MATERIAL_ALREADY_SUBMITTED" => {
                Some(Self::RetMonsterResearchActivityMaterialAlreadySubmitted)
            }
            "RET_FANTASTIC_STORY_ACTIVITY_STORY_ERROR" => {
                Some(Self::RetFantasticStoryActivityStoryError)
            }
            "RET_FANTASTIC_STORY_ACTIVITY_STORY_NOT_OPEN" => {
                Some(Self::RetFantasticStoryActivityStoryNotOpen)
            }
            "RET_FANTASTIC_STORY_ACTIVITY_BATTLE_ERROR" => {
                Some(Self::RetFantasticStoryActivityBattleError)
            }
            "RET_FANTASTIC_STORY_ACTIVITY_BATTLE_NOT_OPEN" => {
                Some(Self::RetFantasticStoryActivityBattleNotOpen)
            }
            "RET_FANTASTIC_STORY_ACTIVITY_BATTLE_AVATAR_ERROR" => {
                Some(Self::RetFantasticStoryActivityBattleAvatarError)
            }
            "RET_FANTASTIC_STORY_ACTIVITY_BATTLE_BUFF_ERROR" => {
                Some(Self::RetFantasticStoryActivityBattleBuffError)
            }
            "RET_FANTASTIC_STORY_ACTIVITY_PRE_BATTLE_SCORE_NOT_ENOUGH" => {
                Some(Self::RetFantasticStoryActivityPreBattleScoreNotEnough)
            }
            "RET_TRIAL_ACTIVITY_ALREADY_IN_TRIAL_ACTIVITY" => {
                Some(Self::RetTrialActivityAlreadyInTrialActivity)
            }
            "RET_MESSAGE_CONFIG_NOT_EXIST" => Some(Self::RetMessageConfigNotExist),
            "RET_MESSAGE_SECTION_NOT_TAKE" => Some(Self::RetMessageSectionNotTake),
            "RET_MESSAGE_GROUP_NOT_TAKE" => Some(Self::RetMessageGroupNotTake),
            "RET_MESSAGE_SECTION_ID_NOT_MATCH" => Some(Self::RetMessageSectionIdNotMatch),
            "RET_MESSAGE_SECTION_CAN_NOT_FINISH" => {
                Some(Self::RetMessageSectionCanNotFinish)
            }
            "RET_MESSAGE_ITEM_CAN_NOT_FINISH" => Some(Self::RetMessageItemCanNotFinish),
            "RET_MESSAGE_ITEM_RAID_CAN_NOT_FINISH" => {
                Some(Self::RetMessageItemRaidCanNotFinish)
            }
            "RET_FRIEND_ALREADY_IS_FRIEND" => Some(Self::RetFriendAlreadyIsFriend),
            "RET_FRIEND_IS_NOT_FRIEND" => Some(Self::RetFriendIsNotFriend),
            "RET_FRIEND_APPLY_EXPIRE" => Some(Self::RetFriendApplyExpire),
            "RET_FRIEND_IN_BLACKLIST" => Some(Self::RetFriendInBlacklist),
            "RET_FRIEND_NOT_IN_BLACKLIST" => Some(Self::RetFriendNotInBlacklist),
            "RET_FRIEND_NUMBER_LIMIT" => Some(Self::RetFriendNumberLimit),
            "RET_FRIEND_BLACKLIST_NUMBER_LIMIT" => {
                Some(Self::RetFriendBlacklistNumberLimit)
            }
            "RET_FRIEND_DAILY_APPLY_LIMIT" => Some(Self::RetFriendDailyApplyLimit),
            "RET_FRIEND_IN_HANDLE_LIMIT" => Some(Self::RetFriendInHandleLimit),
            "RET_FRIEND_APPLY_IN_CD" => Some(Self::RetFriendApplyInCd),
            "RET_FRIEND_REMARK_NAME_FORMAT_ERROR" => {
                Some(Self::RetFriendRemarkNameFormatError)
            }
            "RET_FRIEND_PLAYER_NOT_FOUND" => Some(Self::RetFriendPlayerNotFound),
            "RET_FRIEND_IN_TARGET_BLACKLIST" => Some(Self::RetFriendInTargetBlacklist),
            "RET_FRIEND_TARGET_NUMBER_LIMIT" => Some(Self::RetFriendTargetNumberLimit),
            "RET_ASSIST_QUERY_TOO_FAST" => Some(Self::RetAssistQueryTooFast),
            "RET_ASSIST_NOT_EXIST" => Some(Self::RetAssistNotExist),
            "RET_ASSIST_USED_ALREADY" => Some(Self::RetAssistUsedAlready),
            "RET_FRIEND_REPORT_REASON_FORMAT_ERROR" => {
                Some(Self::RetFriendReportReasonFormatError)
            }
            "RET_FRIEND_REPORT_SENSITIVE_WORDS" => {
                Some(Self::RetFriendReportSensitiveWords)
            }
            "RET_ASSIST_USED_TIMES_OVER" => Some(Self::RetAssistUsedTimesOver),
            "RET_ASSIST_QUIT_ALREADY" => Some(Self::RetAssistQuitAlready),
            "RET_ASSIST_AVATAR_IN_LINEUP" => Some(Self::RetAssistAvatarInLineup),
            "RET_ASSIST_NO_REWARD" => Some(Self::RetAssistNoReward),
            "RET_FRIEND_SEARCH_NUM_LIMIT" => Some(Self::RetFriendSearchNumLimit),
            "RET_FRIEND_SEARCH_IN_CD" => Some(Self::RetFriendSearchInCd),
            "RET_FRIEND_REMARK_NAME_UTF8_ERROR" => {
                Some(Self::RetFriendRemarkNameUtf8Error)
            }
            "RET_FRIEND_REPORT_REASON_UTF8_ERROR" => {
                Some(Self::RetFriendReportReasonUtf8Error)
            }
            "RET_ASSIST_SET_ALREADY" => Some(Self::RetAssistSetAlready),
            "RET_FRIEND_TARGET_FORBID_OTHER_APPLY" => {
                Some(Self::RetFriendTargetForbidOtherApply)
            }
            "RET_FRIEND_MARKED_CNT_MAX" => Some(Self::RetFriendMarkedCntMax),
            "RET_FRIEND_MARKED_ALREADY" => Some(Self::RetFriendMarkedAlready),
            "RET_FRIEND_NOT_MARKED" => Some(Self::RetFriendNotMarked),
            "RET_FRIEND_CHALLENGE_LINEUP_RECOMMEND_IN_CD" => {
                Some(Self::RetFriendChallengeLineupRecommendInCd)
            }
            "RET_VIEW_PLAYER_CARD_IN_CD" => Some(Self::RetViewPlayerCardInCd),
            "RET_VIEW_PLAYER_BATTLE_RECORD_IN_CD" => {
                Some(Self::RetViewPlayerBattleRecordInCd)
            }
            "RET_PLAYER_BOARD_HEAD_ICON_NOT_EXIST" => {
                Some(Self::RetPlayerBoardHeadIconNotExist)
            }
            "RET_PLAYER_BOARD_HEAD_ICON_LOCKED" => {
                Some(Self::RetPlayerBoardHeadIconLocked)
            }
            "RET_PLAYER_BOARD_HEAD_ICON_ALREADY_UNLOCKED" => {
                Some(Self::RetPlayerBoardHeadIconAlreadyUnlocked)
            }
            "RET_PLAYER_BOARD_DISPLAY_AVATAR_NOT_EXIST" => {
                Some(Self::RetPlayerBoardDisplayAvatarNotExist)
            }
            "RET_PLAYER_BOARD_DISPLAY_AVATAR_EXCEED_LIMIT" => {
                Some(Self::RetPlayerBoardDisplayAvatarExceedLimit)
            }
            "RET_PLAYER_BOARD_DISPLAY_REPEATED_AVATAR" => {
                Some(Self::RetPlayerBoardDisplayRepeatedAvatar)
            }
            "RET_PLAYER_BOARD_DISPLAY_AVATAR_SAME_POS" => {
                Some(Self::RetPlayerBoardDisplayAvatarSamePos)
            }
            "RET_PLAYER_BOARD_DISPLAY_AVATAR_LOCKED" => {
                Some(Self::RetPlayerBoardDisplayAvatarLocked)
            }
            "RET_SIGNATURE_LENGTH_EXCEED_LIMIT" => {
                Some(Self::RetSignatureLengthExceedLimit)
            }
            "RET_SIGNATURE_SENSITIVE_WORDS" => Some(Self::RetSignatureSensitiveWords),
            "RET_PLAYER_BOARD_ASSIST_AVATAR_NOT_EXIST" => {
                Some(Self::RetPlayerBoardAssistAvatarNotExist)
            }
            "RET_PLAYER_BOARD_ASSIST_AVATAR_LOCKED" => {
                Some(Self::RetPlayerBoardAssistAvatarLocked)
            }
            "RET_SIGNATURE_UTF8_ERROR" => Some(Self::RetSignatureUtf8Error),
            "RET_PLAYER_BOARD_ASSIST_AVATAR_CNT_ERROR" => {
                Some(Self::RetPlayerBoardAssistAvatarCntError)
            }
            "RET_BATTLE_PASS_TIER_NOT_VALID" => Some(Self::RetBattlePassTierNotValid),
            "RET_BATTLE_PASS_LEVEL_NOT_MEET" => Some(Self::RetBattlePassLevelNotMeet),
            "RET_BATTLE_PASS_REWARD_TAKE_ALREADY" => {
                Some(Self::RetBattlePassRewardTakeAlready)
            }
            "RET_BATTLE_PASS_NOT_PREMIUM" => Some(Self::RetBattlePassNotPremium),
            "RET_BATTLE_PASS_NOT_DOING" => Some(Self::RetBattlePassNotDoing),
            "RET_BATTLE_PASS_LEVEL_INVALID" => Some(Self::RetBattlePassLevelInvalid),
            "RET_BATTLE_PASS_NOT_UNLOCK" => Some(Self::RetBattlePassNotUnlock),
            "RET_BATTLE_PASS_NO_REWARD" => Some(Self::RetBattlePassNoReward),
            "RET_BATTLE_PASS_QUEST_NOT_VALID" => Some(Self::RetBattlePassQuestNotValid),
            "RET_BATTLE_PASS_NOT_CHOOSE_OPTIONAL" => {
                Some(Self::RetBattlePassNotChooseOptional)
            }
            "RET_BATTLE_PASS_NOT_TAKE_REWARD" => Some(Self::RetBattlePassNotTakeReward),
            "RET_BATTLE_PASS_OPTIONAL_NOT_VALID" => {
                Some(Self::RetBattlePassOptionalNotValid)
            }
            "RET_BATTLE_PASS_BUY_ALREADY" => Some(Self::RetBattlePassBuyAlready),
            "RET_BATTLE_PASS_NEAR_END" => Some(Self::RetBattlePassNearEnd),
            "RET_MUSIC_LOCKED" => Some(Self::RetMusicLocked),
            "RET_MUSIC_NOT_EXIST" => Some(Self::RetMusicNotExist),
            "RET_MUSIC_UNLOCK_FAILED" => Some(Self::RetMusicUnlockFailed),
            "RET_PUNK_LORD_LACK_SUMMON_TIMES" => Some(Self::RetPunkLordLackSummonTimes),
            "RET_PUNK_LORD_ATTACKING_MONSTER_LIMIT" => {
                Some(Self::RetPunkLordAttackingMonsterLimit)
            }
            "RET_PUNK_LORD_MONSTER_NOT_EXIST" => Some(Self::RetPunkLordMonsterNotExist),
            "RET_PUNK_LORD_MONSTER_ALREADY_SHARED" => {
                Some(Self::RetPunkLordMonsterAlreadyShared)
            }
            "RET_PUNK_LORD_MONSTER_EXPIRED" => Some(Self::RetPunkLordMonsterExpired),
            "RET_PUNK_LORD_SELF_MONSTER_ATTACK_LIMIT" => {
                Some(Self::RetPunkLordSelfMonsterAttackLimit)
            }
            "RET_PUNK_LORD_LACK_SUPPORT_TIMES" => Some(Self::RetPunkLordLackSupportTimes),
            "RET_PUNK_LORD_MONSTER_ALREADY_KILLED" => {
                Some(Self::RetPunkLordMonsterAlreadyKilled)
            }
            "RET_PUNK_LORD_MONSTER_ATTACKER_LIMIT" => {
                Some(Self::RetPunkLordMonsterAttackerLimit)
            }
            "RET_PUNK_LORD_WORLD_LEVLE_NOT_VALID" => {
                Some(Self::RetPunkLordWorldLevleNotValid)
            }
            "RET_PUNK_LORD_REWARD_LEVLE_NOT_EXIST" => {
                Some(Self::RetPunkLordRewardLevleNotExist)
            }
            "RET_PUNK_LORD_POINT_NOT_MEET" => Some(Self::RetPunkLordPointNotMeet),
            "RET_PUNK_LORD_IN_ATTACKING" => Some(Self::RetPunkLordInAttacking),
            "RET_PUNK_LORD_OPERATION_IN_CD" => Some(Self::RetPunkLordOperationInCd),
            "RET_PUNK_LORD_REWARD_ALREADY_TAKEN" => {
                Some(Self::RetPunkLordRewardAlreadyTaken)
            }
            "RET_PUNK_LORD_OVER_BONUS_REWARD_LIMIT" => {
                Some(Self::RetPunkLordOverBonusRewardLimit)
            }
            "RET_PUNK_LORD_NOT_IN_SCHEDULE" => Some(Self::RetPunkLordNotInSchedule),
            "RET_PUNK_LORD_MONSTER_NOT_ATTACKED" => {
                Some(Self::RetPunkLordMonsterNotAttacked)
            }
            "RET_PUNK_LORD_MONSTER_NOT_KILLED" => Some(Self::RetPunkLordMonsterNotKilled),
            "RET_PUNK_LORD_MONSTER_KILLED_SCORE_ALREADY_TAKE" => {
                Some(Self::RetPunkLordMonsterKilledScoreAlreadyTake)
            }
            "RET_PUNK_LORD_REWARD_LEVLE_ALREADY_TAKE" => {
                Some(Self::RetPunkLordRewardLevleAlreadyTake)
            }
            "RET_DAILY_ACTIVE_LEVEL_INVALID" => Some(Self::RetDailyActiveLevelInvalid),
            "RET_DAILY_ACTIVE_LEVEL_REWARD_ALREADY_TAKEN" => {
                Some(Self::RetDailyActiveLevelRewardAlreadyTaken)
            }
            "RET_DAILY_ACTIVE_LEVEL_AP_NOT_ENOUGH" => {
                Some(Self::RetDailyActiveLevelApNotEnough)
            }
            "RET_DAILY_MEET_PAM" => Some(Self::RetDailyMeetPam),
            "RET_REPLAY_ID_NOT_MATCH" => Some(Self::RetReplayIdNotMatch),
            "RET_REPLAY_REQ_NOT_VALID" => Some(Self::RetReplayReqNotValid),
            "RET_FIGHT_ACTIVITY_DIFFICULTY_LEVEL_NOT_PASSED" => {
                Some(Self::RetFightActivityDifficultyLevelNotPassed)
            }
            "RET_FIGHT_ACTIVITY_DIFFICULTY_LEVEL_REWARD_ALREADY_TAKE" => {
                Some(Self::RetFightActivityDifficultyLevelRewardAlreadyTake)
            }
            "RET_FIGHT_ACTIVITY_STAGE_NOT_OPEN" => {
                Some(Self::RetFightActivityStageNotOpen)
            }
            "RET_TRAIN_VISITOR_VISITOR_NOT_EXIST" => {
                Some(Self::RetTrainVisitorVisitorNotExist)
            }
            "RET_TRAIN_VISITOR_BEHAVIOR_NOT_EXIST" => {
                Some(Self::RetTrainVisitorBehaviorNotExist)
            }
            "RET_TRAIN_VISITOR_BEHAVIOR_FINISHED" => {
                Some(Self::RetTrainVisitorBehaviorFinished)
            }
            "RET_TRAIN_VISITOR_ALL_BEHAVIOR_REWARD_TAKEN" => {
                Some(Self::RetTrainVisitorAllBehaviorRewardTaken)
            }
            "RET_TRAIN_VISITOR_GET_ON_MISSION_NOT_FINISH" => {
                Some(Self::RetTrainVisitorGetOnMissionNotFinish)
            }
            "RET_TRAIN_VISITOR_NOT_GET_OFF" => Some(Self::RetTrainVisitorNotGetOff),
            "RET_TEXT_JOIN_UNKNOW_IS_OVERRIDE" => Some(Self::RetTextJoinUnknowIsOverride),
            "RET_TEXT_JOIN_ID_NOT_EXIST" => Some(Self::RetTextJoinIdNotExist),
            "RET_TEXT_JOIN_CAN_NOT_OVERRIDE" => Some(Self::RetTextJoinCanNotOverride),
            "RET_TEXT_JOIN_ITEM_ID_ERROR" => Some(Self::RetTextJoinItemIdError),
            "RET_TEXT_JOIN_SENSITIVE_CHECK_ERROR" => {
                Some(Self::RetTextJoinSensitiveCheckError)
            }
            "RET_TEXT_JOIN_MUST_OVERRIDE" => Some(Self::RetTextJoinMustOverride),
            "RET_TEXT_JOIN_TEXT_EMPTY" => Some(Self::RetTextJoinTextEmpty),
            "RET_TEXT_JOIN_TEXT_FORMAT_ERROR" => Some(Self::RetTextJoinTextFormatError),
            "RET_TEXT_JOIN_TEXT_UTF8_ERROR" => Some(Self::RetTextJoinTextUtf8Error),
            "RET_TEXT_JOIN_BATCH_REQ_ID_REPEAT" => {
                Some(Self::RetTextJoinBatchReqIdRepeat)
            }
            "RET_TEXT_JOIN_TYPE_NOT_SUPPORT_BATCH_REQ" => {
                Some(Self::RetTextJoinTypeNotSupportBatchReq)
            }
            "RET_TEXT_JOIN_AVATAR_ID_NOT_EXIST" => {
                Some(Self::RetTextJoinAvatarIdNotExist)
            }
            "RET_TEXT_JOIN_UNKNOW_TYPE" => Some(Self::RetTextJoinUnknowType),
            "RET_PAM_MISSION_MISSION_ID_ERROR" => Some(Self::RetPamMissionMissionIdError),
            "RET_PAM_MISSION_MISSION_EXPIRE" => Some(Self::RetPamMissionMissionExpire),
            "RET_CHAT_TYPE_NOT_EXIST" => Some(Self::RetChatTypeNotExist),
            "RET_MSG_TYPE_NOT_EXIST" => Some(Self::RetMsgTypeNotExist),
            "RET_CHAT_NO_TARGET_UID" => Some(Self::RetChatNoTargetUid),
            "RET_CHAT_MSG_EMPTY" => Some(Self::RetChatMsgEmpty),
            "RET_CHAT_MSG_EXCEED_LIMIT" => Some(Self::RetChatMsgExceedLimit),
            "RET_CHAT_MSG_SENSITIVE_CHECK_ERROR" => {
                Some(Self::RetChatMsgSensitiveCheckError)
            }
            "RET_CHAT_MSG_UTF8_ERROR" => Some(Self::RetChatMsgUtf8Error),
            "RET_CHAT_FORBID_SWITCH_OPEN" => Some(Self::RetChatForbidSwitchOpen),
            "RET_CHAT_FORBID" => Some(Self::RetChatForbid),
            "RET_CHAT_MSG_INCLUDE_SPECIAL_STR" => Some(Self::RetChatMsgIncludeSpecialStr),
            "RET_CHAT_MSG_EMOJI_NOT_EXIST" => Some(Self::RetChatMsgEmojiNotExist),
            "RET_CHAT_MSG_EMOJI_GENDER_NOT_MATCH" => {
                Some(Self::RetChatMsgEmojiGenderNotMatch)
            }
            "RET_CHAT_MSG_EMOJI_NOT_MARKED" => Some(Self::RetChatMsgEmojiNotMarked),
            "RET_CHAT_MSG_EMOJI_ALREADY_MARKED" => {
                Some(Self::RetChatMsgEmojiAlreadyMarked)
            }
            "RET_CHAT_MSG_EMOJI_MARKED_MAX_LIMIT" => {
                Some(Self::RetChatMsgEmojiMarkedMaxLimit)
            }
            "RET_BOXING_CLUB_CHALLENGE_NOT_OPEN" => {
                Some(Self::RetBoxingClubChallengeNotOpen)
            }
            "RET_MUSEUM_NOT_OPEN" => Some(Self::RetMuseumNotOpen),
            "RET_MUSEUM_TURN_CNT_NOT_MATCH" => Some(Self::RetMuseumTurnCntNotMatch),
            "RET_MUSEUM_PHASE_NOT_REACH" => Some(Self::RetMuseumPhaseNotReach),
            "RET_MUSEUM_UNKNOW_STUFF" => Some(Self::RetMuseumUnknowStuff),
            "RET_MUSEUM_UNKNOW_AREA" => Some(Self::RetMuseumUnknowArea),
            "RET_MUSEUM_UNKNOW_POS" => Some(Self::RetMuseumUnknowPos),
            "RET_MUSEUM_STUFF_ALREADY_IN_AREA" => Some(Self::RetMuseumStuffAlreadyInArea),
            "RET_MUSEUM_STUFF_NOT_IN_AREA" => Some(Self::RetMuseumStuffNotInArea),
            "RET_MUSEUM_GET_NPC_REPEAT" => Some(Self::RetMuseumGetNpcRepeat),
            "RET_MUSEUM_GET_NPC_UNLOCK" => Some(Self::RetMuseumGetNpcUnlock),
            "RET_MUSEUM_GET_NPC_NOT_ENOUGH" => Some(Self::RetMuseumGetNpcNotEnough),
            "RET_MUSEUM_CHANGE_STUFF_AREA_ERROR" => {
                Some(Self::RetMuseumChangeStuffAreaError)
            }
            "RET_MUSEUM_NOT_INIT" => Some(Self::RetMuseumNotInit),
            "RET_MUSEUM_EVENT_ERROR" => Some(Self::RetMuseumEventError),
            "RET_MUSEUM_UNKNOW_CHOOSE_EVENT_ID" => {
                Some(Self::RetMuseumUnknowChooseEventId)
            }
            "RET_MUSEUM_EVENT_ORDER_NOT_MATCH" => Some(Self::RetMuseumEventOrderNotMatch),
            "RET_MUSEUM_EVENT_PHASE_NOT_UNLOCK" => {
                Some(Self::RetMuseumEventPhaseNotUnlock)
            }
            "RET_MUSEUM_EVENT_MISSION_NOT_FOUND" => {
                Some(Self::RetMuseumEventMissionNotFound)
            }
            "RET_MUSEUM_AREA_LEVEL_UP_ALREADY" => Some(Self::RetMuseumAreaLevelUpAlready),
            "RET_MUSEUM_STUFF_ALREADY_USED" => Some(Self::RetMuseumStuffAlreadyUsed),
            "RET_MUSEUM_EVENT_ROUND_NOT_UNLOCK" => {
                Some(Self::RetMuseumEventRoundNotUnlock)
            }
            "RET_MUSEUM_STUFF_IN_AREA" => Some(Self::RetMuseumStuffInArea),
            "RET_MUSEUM_STUFF_DISPATCH" => Some(Self::RetMuseumStuffDispatch),
            "RET_MUSEUM_IS_END" => Some(Self::RetMuseumIsEnd),
            "RET_MUSEUM_STUFF_LEAVING" => Some(Self::RetMuseumStuffLeaving),
            "RET_MUSEUM_EVENT_MISSION_NOT_FINISH" => {
                Some(Self::RetMuseumEventMissionNotFinish)
            }
            "RET_MUSEUM_COLLECT_REWARD_NOT_EXIST" => {
                Some(Self::RetMuseumCollectRewardNotExist)
            }
            "RET_MUSEUM_COLLECT_REWARD_ALREADY_TAKEN" => {
                Some(Self::RetMuseumCollectRewardAlreadyTaken)
            }
            "RET_MUSEUM_ACCEPT_MISSION_MAX_LIMIT" => {
                Some(Self::RetMuseumAcceptMissionMaxLimit)
            }
            "RET_ROGUE_CHALLENGE_NOT_OPEN" => Some(Self::RetRogueChallengeNotOpen),
            "RET_ROGUE_CHALLENGE_ASSIS_REFRESH_LIMIT" => {
                Some(Self::RetRogueChallengeAssisRefreshLimit)
            }
            "RET_ALLEY_NOT_INIT" => Some(Self::RetAlleyNotInit),
            "RET_ALLEY_NOT_OPEN" => Some(Self::RetAlleyNotOpen),
            "RET_ALLEY_MAP_NOT_EXIST" => Some(Self::RetAlleyMapNotExist),
            "RET_ALLEY_EMPTY_POS_LIST" => Some(Self::RetAlleyEmptyPosList),
            "RET_ALLEY_LINE_POS_INVALID" => Some(Self::RetAlleyLinePosInvalid),
            "RET_ALLEY_SHOP_NOT_UNLOCK" => Some(Self::RetAlleyShopNotUnlock),
            "RET_ALLEY_DEPOT_FULL" => Some(Self::RetAlleyDepotFull),
            "RET_ALLEY_SHOP_NOT_INCLUDE" => Some(Self::RetAlleyShopNotInclude),
            "RET_ALLEY_EVENT_NOT_UNLOCK" => Some(Self::RetAlleyEventNotUnlock),
            "RET_ALLEY_EVENT_NOT_REFRESH" => Some(Self::RetAlleyEventNotRefresh),
            "RET_ALLEY_EVENT_STATE_DOING" => Some(Self::RetAlleyEventStateDoing),
            "RET_ALLEY_EVENT_STATE_FINISH" => Some(Self::RetAlleyEventStateFinish),
            "RET_ALLEY_EVENT_ERROR" => Some(Self::RetAlleyEventError),
            "RET_ALLEY_REWARD_LEVEL_ERROR" => Some(Self::RetAlleyRewardLevelError),
            "RET_ALLEY_REWARD_PRESTIGE_NOT_ENOUGH" => {
                Some(Self::RetAlleyRewardPrestigeNotEnough)
            }
            "RET_ALLEY_SHIP_EMPTY" => Some(Self::RetAlleyShipEmpty),
            "RET_ALLEY_SHIP_ID_DISMATCH" => Some(Self::RetAlleyShipIdDismatch),
            "RET_ALLEY_SHIP_NOT_EXIST" => Some(Self::RetAlleyShipNotExist),
            "RET_ALLEY_SHIP_NOT_UNLOCK" => Some(Self::RetAlleyShipNotUnlock),
            "RET_ALLEY_GOODS_NOT_EXIST" => Some(Self::RetAlleyGoodsNotExist),
            "RET_ALLEY_GOODS_NOT_UNLOCK" => Some(Self::RetAlleyGoodsNotUnlock),
            "RET_ALLEY_PROFIT_NOT_POSITIVE" => Some(Self::RetAlleyProfitNotPositive),
            "RET_ALLEY_SPECIAL_ORDER_DISMATCH" => {
                Some(Self::RetAlleySpecialOrderDismatch)
            }
            "RET_ALLEY_ORDER_GOODS_OVER_LIMIT" => Some(Self::RetAlleyOrderGoodsOverLimit),
            "RET_ALLEY_SPECIAL_ORDER_CONDITION_NOT_MEET" => {
                Some(Self::RetAlleySpecialOrderConditionNotMeet)
            }
            "RET_ALLEY_DEPOT_SIZE_OVER_LIMIT" => Some(Self::RetAlleyDepotSizeOverLimit),
            "RET_ALLEY_GOODS_NOT_ENOUGH" => Some(Self::RetAlleyGoodsNotEnough),
            "RET_ALLEY_ORDER_INDEX_INVALID" => Some(Self::RetAlleyOrderIndexInvalid),
            "RET_ALLEY_REWARD_ALREADY_TAKE" => Some(Self::RetAlleyRewardAlreadyTake),
            "RET_ALLEY_REWARD_NOT_EXIST" => Some(Self::RetAlleyRewardNotExist),
            "RET_ALLEY_MAIN_MISSION_NOT_DOING" => Some(Self::RetAlleyMainMissionNotDoing),
            "RET_ALLEY_CRITICAL_EVENT_NOT_FINISH" => {
                Some(Self::RetAlleyCriticalEventNotFinish)
            }
            "RET_ALLEY_SHOP_GOODS_NOT_VALID" => Some(Self::RetAlleyShopGoodsNotValid),
            "RET_ALLEY_SLASH_NOT_OPEN" => Some(Self::RetAlleySlashNotOpen),
            "RET_ALLEY_PLACING_ANCHOR_INVALID" => {
                Some(Self::RetAlleyPlacingAnchorInvalid)
            }
            "RET_ALLEY_PLACING_GOODS_INDEX_INVALID" => {
                Some(Self::RetAlleyPlacingGoodsIndexInvalid)
            }
            "RET_ALLEY_SAVE_MAP_TOO_QUICK" => Some(Self::RetAlleySaveMapTooQuick),
            "RET_ALLEY_MAP_NOT_LINK" => Some(Self::RetAlleyMapNotLink),
            "RET_ALLEY_FUNDS_NOT_LOWER_BASE" => Some(Self::RetAlleyFundsNotLowerBase),
            "RET_ALLEY_EVENT_NOT_FINISH" => Some(Self::RetAlleyEventNotFinish),
            "RET_ALLEY_NORMAL_ORDER_NOT_MEET" => Some(Self::RetAlleyNormalOrderNotMeet),
            "RET_PLAYER_RETURN_NOT_OPEN" => Some(Self::RetPlayerReturnNotOpen),
            "RET_PLAYER_RETURN_IS_SIGNED" => Some(Self::RetPlayerReturnIsSigned),
            "RET_PLAYER_RETURN_POINT_NOT_ENOUGH" => {
                Some(Self::RetPlayerReturnPointNotEnough)
            }
            "RET_PLAYER_RETURN_CONDITION_INVALID" => {
                Some(Self::RetPlayerReturnConditionInvalid)
            }
            "RET_PLAYER_RETURN_HAS_SIGNED" => Some(Self::RetPlayerReturnHasSigned),
            "RET_PLAYER_RETURN_REWARD_TAKEN" => Some(Self::RetPlayerReturnRewardTaken),
            "RET_AETHER_DIVIDE_NO_LINEUP" => Some(Self::RetAetherDivideNoLineup),
            "RET_AETHER_DIVIDE_LINEUP_INVALID" => {
                Some(Self::RetAetherDivideLineupInvalid)
            }
            "RET_CHAT_BUBBLE_ID_ERROR" => Some(Self::RetChatBubbleIdError),
            "RET_CHAT_BUBBLE_ID_NOT_UNLOCK" => Some(Self::RetChatBubbleIdNotUnlock),
            "RET_PHONE_THEME_ID_ERROR" => Some(Self::RetPhoneThemeIdError),
            "RET_PHONE_THEME_ID_NOT_UNLOCK" => Some(Self::RetPhoneThemeIdNotUnlock),
            "RET_CHAT_BUBBLE_SELECT_IS_CURRENT" => {
                Some(Self::RetChatBubbleSelectIsCurrent)
            }
            "RET_PHONE_THEME_SELECT_IS_CURRENT" => {
                Some(Self::RetPhoneThemeSelectIsCurrent)
            }
            "RET_CHESS_ROGUE_CONFIG_NOT_FOUND" => Some(Self::RetChessRogueConfigNotFound),
            "RET_CHESS_ROGUE_CONFIG_INVALID" => Some(Self::RetChessRogueConfigInvalid),
            "RET_CHESS_ROGUE_NO_VALID_ROOM" => Some(Self::RetChessRogueNoValidRoom),
            "RET_CHESS_ROGUE_NO_CELL_INFO" => Some(Self::RetChessRogueNoCellInfo),
            "RET_CHESS_ROGUE_CELL_NOT_FINISH" => Some(Self::RetChessRogueCellNotFinish),
            "RET_CHESS_ROGUE_CELL_IS_LOCKED" => Some(Self::RetChessRogueCellIsLocked),
            "RET_CHESS_ROGUE_SCHEDULE_NOT_MATCH" => {
                Some(Self::RetChessRogueScheduleNotMatch)
            }
            "RET_CHESS_ROGUE_STATUS_FAIL" => Some(Self::RetChessRogueStatusFail),
            "RET_CHESS_ROGUE_AREA_NOT_EXIST" => Some(Self::RetChessRogueAreaNotExist),
            "RET_CHESS_ROGUE_LINEUP_FAIL" => Some(Self::RetChessRogueLineupFail),
            "RET_CHESS_ROGUE_AEON_FAIL" => Some(Self::RetChessRogueAeonFail),
            "RET_CHESS_ROGUE_ENTER_CELL_FAIL" => Some(Self::RetChessRogueEnterCellFail),
            "RET_CHESS_ROGUE_ROLL_DICE_FAIL" => Some(Self::RetChessRogueRollDiceFail),
            "RET_CHESS_ROGUE_DICE_STATUS_FAIL" => Some(Self::RetChessRogueDiceStatusFail),
            "RET_CHESS_ROGUE_DICE_CNT_NOT_FULL" => {
                Some(Self::RetChessRogueDiceCntNotFull)
            }
            "RET_CHESS_ROGUE_UNLOCK" => Some(Self::RetChessRogueUnlock),
            "RET_CHESS_ROGUE_PICK_AVATAR_FAIL" => Some(Self::RetChessRoguePickAvatarFail),
            "RET_CHESS_ROGUE_AVATAR_INVALID" => Some(Self::RetChessRogueAvatarInvalid),
            "RET_CHESS_ROGUE_CELL_CAN_NOT_SELECT" => {
                Some(Self::RetChessRogueCellCanNotSelect)
            }
            "RET_CHESS_ROGUE_DICE_CONFIRMED" => Some(Self::RetChessRogueDiceConfirmed),
            "RET_CHESS_ROGUE_NOUS_DICE_NOT_MATCH" => {
                Some(Self::RetChessRogueNousDiceNotMatch)
            }
            "RET_CHESS_ROGUE_NOUS_DICE_RARITY_FAIL" => {
                Some(Self::RetChessRogueNousDiceRarityFail)
            }
            "RET_CHESS_ROGUE_NOUS_DICE_SURFACE_DUPLICATE" => {
                Some(Self::RetChessRogueNousDiceSurfaceDuplicate)
            }
            "RET_CHESS_ROGUE_NOT_IN_ROGUE" => Some(Self::RetChessRogueNotInRogue),
            "RET_CHESS_ROGUE_NOUS_DICE_BRANCH_LIMIT" => {
                Some(Self::RetChessRogueNousDiceBranchLimit)
            }
            "RET_HELIOBUS_NOT_OPEN" => Some(Self::RetHeliobusNotOpen),
            "RET_HELIOBUS_SNS_POST_NOT_UNLOCK" => Some(Self::RetHeliobusSnsPostNotUnlock),
            "RET_HELIOBUS_SNS_ALREADY_READ" => Some(Self::RetHeliobusSnsAlreadyRead),
            "RET_HELIOBUS_SNS_ALREADY_LIKED" => Some(Self::RetHeliobusSnsAlreadyLiked),
            "RET_HELIOBUS_SNS_ALREADY_COMMENTED" => {
                Some(Self::RetHeliobusSnsAlreadyCommented)
            }
            "RET_HELIOBUS_SNS_IN_MISSION" => Some(Self::RetHeliobusSnsInMission),
            "RET_HELIOBUS_SNS_ALREADY_POSTED" => Some(Self::RetHeliobusSnsAlreadyPosted),
            "RET_HELIOBUS_SNS_NOT_DOING_MISSION" => {
                Some(Self::RetHeliobusSnsNotDoingMission)
            }
            "RET_HELIOBUS_REWARD_LEVEL_MAX" => Some(Self::RetHeliobusRewardLevelMax),
            "RET_HELIOBUS_INCOME_NOT_ENOUGH" => Some(Self::RetHeliobusIncomeNotEnough),
            "RET_HELIOBUS_SNS_COMMENT_NOT_UNLOCK" => {
                Some(Self::RetHeliobusSnsCommentNotUnlock)
            }
            "RET_HELIOBUS_CHALLENGE_NOT_UNLOCK" => {
                Some(Self::RetHeliobusChallengeNotUnlock)
            }
            "RET_HELIOBUS_CHALLENGE_ID_ERROR" => Some(Self::RetHeliobusChallengeIdError),
            "RET_HELIOBUS_SKILL_NOT_UNLOCK" => Some(Self::RetHeliobusSkillNotUnlock),
            "RET_HELIOBUS_ACCEPT_POST_MISSION_FAIL" => {
                Some(Self::RetHeliobusAcceptPostMissionFail)
            }
            "RET_HELIOBUS_SKILL_NOT_SELECTED" => Some(Self::RetHeliobusSkillNotSelected),
            "RET_HELIOBUS_PLANE_TYPE_INVALID" => Some(Self::RetHeliobusPlaneTypeInvalid),
            "RET_REDDOT_PARAM_INVALID" => Some(Self::RetReddotParamInvalid),
            "RET_REDDOT_ACTIVITY_NOT_OPEN" => Some(Self::RetReddotActivityNotOpen),
            "RET_ROGUE_ENDLESS_ACTIVITY_CONFIG_ERROR" => {
                Some(Self::RetRogueEndlessActivityConfigError)
            }
            "RET_ROGUE_ENDLESS_ACTIVITY_NOT_OPEN" => {
                Some(Self::RetRogueEndlessActivityNotOpen)
            }
            "RET_ROGUE_ENDLESS_ACTIVITY_OVER_BONUS_REWARD_LIMIT" => {
                Some(Self::RetRogueEndlessActivityOverBonusRewardLimit)
            }
            "RET_ROGUE_ENDLESS_ACTIVITY_SCORE_NOT_MEET" => {
                Some(Self::RetRogueEndlessActivityScoreNotMeet)
            }
            "RET_ROGUE_ENDLESS_ACTIVITY_REWARD_LEVLE_ALREADY_TAKE" => {
                Some(Self::RetRogueEndlessActivityRewardLevleAlreadyTake)
            }
            "RET_HEART_DIAL_SCRIPT_NOT_FOUND" => Some(Self::RetHeartDialScriptNotFound),
            "RET_HEART_DIAL_SCRIPT_EMOTION_THE_SAME" => {
                Some(Self::RetHeartDialScriptEmotionTheSame)
            }
            "RET_HEART_DIAL_SCRIPT_STEP_NOT_NORMAL" => {
                Some(Self::RetHeartDialScriptStepNotNormal)
            }
            "RET_HEART_DIAL_SCRIPT_CONDITION_NOT_MATCH" => {
                Some(Self::RetHeartDialScriptConditionNotMatch)
            }
            "RET_HEART_DIAL_SCRIPT_SUBMIT_ITEM_NUM_NOT_MATCH" => {
                Some(Self::RetHeartDialScriptSubmitItemNumNotMatch)
            }
            "RET_HEART_DIAL_SCRIPT_SUBMIT_ITEM_ID_NOT_MATCH" => {
                Some(Self::RetHeartDialScriptSubmitItemIdNotMatch)
            }
            "RET_HEART_DIAL_DIALOGUE_NOT_FOUND" => {
                Some(Self::RetHeartDialDialogueNotFound)
            }
            "RET_HEART_DIAL_DIALOGUE_ALREADY_PERFORMED" => {
                Some(Self::RetHeartDialDialogueAlreadyPerformed)
            }
            "RET_HEART_DIAL_NPC_NOT_FOUND" => Some(Self::RetHeartDialNpcNotFound),
            "RET_HEART_DIAL_TRACE_CONFIG_NOT_FOUND" => {
                Some(Self::RetHeartDialTraceConfigNotFound)
            }
            "RET_HEART_DIAL_FLOOR_TRACE_EXIST" => Some(Self::RetHeartDialFloorTraceExist),
            "RET_HEART_DIAL_TRACE_FLOOR_NOT_MATCH" => {
                Some(Self::RetHeartDialTraceFloorNotMatch)
            }
            "RET_TRAVEL_BROCHURE_CONFIG_ERROR" => {
                Some(Self::RetTravelBrochureConfigError)
            }
            "RET_TRAVEL_BROCHURE_PARAM_INVALID" => {
                Some(Self::RetTravelBrochureParamInvalid)
            }
            "RET_TRAVEL_BROCHURE_LOCKED" => Some(Self::RetTravelBrochureLocked),
            "RET_TRAVEL_BROCHURE_CANNOT_OPERATE" => {
                Some(Self::RetTravelBrochureCannotOperate)
            }
            "RET_TRAVEL_BROCHURE_WORLD_ID_NOT_MATCH" => {
                Some(Self::RetTravelBrochureWorldIdNotMatch)
            }
            "RET_TRAVEL_BROCHURE_HAS_NO_WORLD_BOOK" => {
                Some(Self::RetTravelBrochureHasNoWorldBook)
            }
            "RET_TRAVEL_BROCHURE_PAGE_FULL" => Some(Self::RetTravelBrochurePageFull),
            "RET_MAP_ROTATION_NOT_IN_REGION" => Some(Self::RetMapRotationNotInRegion),
            "RET_MAP_ROTATION_ROTATER_ALREADY_DEPLOYED" => {
                Some(Self::RetMapRotationRotaterAlreadyDeployed)
            }
            "RET_MAP_ROTATION_ENERGY_NOT_ENOUGH" => {
                Some(Self::RetMapRotationEnergyNotEnough)
            }
            "RET_MAP_ROTATION_ENTITY_NOT_ON_CUR_POSE" => {
                Some(Self::RetMapRotationEntityNotOnCurPose)
            }
            "RET_MAP_ROTATION_ROTATER_NOT_DEPLOYED" => {
                Some(Self::RetMapRotationRotaterNotDeployed)
            }
            "RET_MAP_ROTATION_POSE_ROTATER_MISMATCH" => {
                Some(Self::RetMapRotationPoseRotaterMismatch)
            }
            "RET_MAP_ROTATION_ROTATER_NOT_REMOVABLE" => {
                Some(Self::RetMapRotationRotaterNotRemovable)
            }
            "RET_MAP_ROTATION_ROTATER_DISPOSABLE" => {
                Some(Self::RetMapRotationRotaterDisposable)
            }
            "RET_SPACE_ZOO_ACTIVITY_CAT_NOT_FOUND" => {
                Some(Self::RetSpaceZooActivityCatNotFound)
            }
            "RET_SPACE_ZOO_ACTIVITY_CAT_PARAM_INVALID" => {
                Some(Self::RetSpaceZooActivityCatParamInvalid)
            }
            "RET_SPACE_ZOO_ACTIVITY_CAT_ITEM_NOT_ENOUGH" => {
                Some(Self::RetSpaceZooActivityCatItemNotEnough)
            }
            "RET_SPACE_ZOO_ACTIVITY_CAT_BAG_FULL" => {
                Some(Self::RetSpaceZooActivityCatBagFull)
            }
            "RET_SPACE_ZOO_ACTIVITY_CAT_NOT_TO_MUTATE" => {
                Some(Self::RetSpaceZooActivityCatNotToMutate)
            }
            "RET_SPACE_ZOO_ACTIVITY_CAT_STATE_ERROR" => {
                Some(Self::RetSpaceZooActivityCatStateError)
            }
            "RET_SPACE_ZOO_ACTIVITY_CAT_CATTERY_LOCKED" => {
                Some(Self::RetSpaceZooActivityCatCatteryLocked)
            }
            "RET_SPACE_ZOO_ACTIVITY_CAT_OUT_NOW" => {
                Some(Self::RetSpaceZooActivityCatOutNow)
            }
            "RET_SPACE_ZOO_ACTIVITY_CAT_CONFIG_NOT_FOUND" => {
                Some(Self::RetSpaceZooActivityCatConfigNotFound)
            }
            "RET_SPACE_ZOO_ACTIVITY_CAT_FEATURE_NOT_FOUND" => {
                Some(Self::RetSpaceZooActivityCatFeatureNotFound)
            }
            "RET_SPACE_ZOO_ACTIVITY_CAT_ADD_CAT_ERROR" => {
                Some(Self::RetSpaceZooActivityCatAddCatError)
            }
            "RET_SPACE_ZOO_ACTIVITY_CAT_MONEY_NOT_ENOUGH" => {
                Some(Self::RetSpaceZooActivityCatMoneyNotEnough)
            }
            "RET_SPACE_ZOO_ACTIVITY_CAT_COND_NOT_MATCH" => {
                Some(Self::RetSpaceZooActivityCatCondNotMatch)
            }
            "RET_STRONG_CHALLENGE_ACTIVITY_STAGE_CFG_MISS" => {
                Some(Self::RetStrongChallengeActivityStageCfgMiss)
            }
            "RET_STRONG_CHALLENGE_ACTIVITY_STAGE_NOT_OPEN" => {
                Some(Self::RetStrongChallengeActivityStageNotOpen)
            }
            "RET_STRONG_CHALLENGE_ACTIVITY_BUFF_ERROR" => {
                Some(Self::RetStrongChallengeActivityBuffError)
            }
            "RET_ROLL_SHOP_NOT_FOUND" => Some(Self::RetRollShopNotFound),
            "RET_ROLL_SHOP_GROUP_EMPTY" => Some(Self::RetRollShopGroupEmpty),
            "RET_ROLL_SHOP_EMPTY" => Some(Self::RetRollShopEmpty),
            "RET_ROLL_SHOP_GACHA_REQ_DUPLICATED" => {
                Some(Self::RetRollShopGachaReqDuplicated)
            }
            "RET_ROLL_SHOP_RANDOM_ERROR" => Some(Self::RetRollShopRandomError),
            "RET_ROLL_SHOP_GROUP_TYPE_NOT_FOUND" => {
                Some(Self::RetRollShopGroupTypeNotFound)
            }
            "RET_ROLL_SHOP_HAS_STORED_REWARD_ALREADY" => {
                Some(Self::RetRollShopHasStoredRewardAlready)
            }
            "RET_ROLL_SHOP_NO_STORED_REWARD" => Some(Self::RetRollShopNoStoredReward),
            "RET_ROLL_SHOP_NOT_IN_VALID_SCENE" => Some(Self::RetRollShopNotInValidScene),
            "RET_ROLL_SHOP_INVALID_ROLL_SHOP_TYPE" => {
                Some(Self::RetRollShopInvalidRollShopType)
            }
            "RET_ACTIVITY_RAID_COLLECTION_PREV_NOT_FINISH" => {
                Some(Self::RetActivityRaidCollectionPrevNotFinish)
            }
            "RET_OFFERING_NOT_UNLOCK" => Some(Self::RetOfferingNotUnlock),
            "RET_OFFERING_LEVEL_NOT_UNLOCK" => Some(Self::RetOfferingLevelNotUnlock),
            "RET_OFFERING_REACH_MAX_LEVEL" => Some(Self::RetOfferingReachMaxLevel),
            "RET_OFFERING_ITEM_NOT_ENOUGH" => Some(Self::RetOfferingItemNotEnough),
            "RET_OFFERING_LONGTAIL_NOT_OPEN" => Some(Self::RetOfferingLongtailNotOpen),
            "RET_OFFERING_REWARD_CONDITION" => Some(Self::RetOfferingRewardCondition),
            "RET_DRINK_MAKER_CHAT_INVALID" => Some(Self::RetDrinkMakerChatInvalid),
            "RET_DRINK_MAKER_PARAM_INVALID" => Some(Self::RetDrinkMakerParamInvalid),
            "RET_DRINK_MAKER_PARAM_NOT_UNLOCK" => Some(Self::RetDrinkMakerParamNotUnlock),
            "RET_DRINK_MAKER_CONFIG_NOT_FOUND" => Some(Self::RetDrinkMakerConfigNotFound),
            "RET_DRINK_MAKER_NOT_LAST_CHAT" => Some(Self::RetDrinkMakerNotLastChat),
            "RET_DRINK_MAKER_DAY_AND_FREE_PHASE_NOT_OPEN" => {
                Some(Self::RetDrinkMakerDayAndFreePhaseNotOpen)
            }
            "RET_MONOPOLY_NOT_OPEN" => Some(Self::RetMonopolyNotOpen),
            "RET_MONOPOLY_CONFIG_ERROR" => Some(Self::RetMonopolyConfigError),
            "RET_MONOPOLY_DICE_NOT_ENOUGH" => Some(Self::RetMonopolyDiceNotEnough),
            "RET_MONOPOLY_CUR_CELL_NOT_FINISH" => Some(Self::RetMonopolyCurCellNotFinish),
            "RET_MONOPOLY_COIN_NOT_ENOUGH" => Some(Self::RetMonopolyCoinNotEnough),
            "RET_MONOPOLY_CELL_WAIT_PENDING" => Some(Self::RetMonopolyCellWaitPending),
            "RET_MONOPOLY_CELL_STATE_ERROR" => Some(Self::RetMonopolyCellStateError),
            "RET_MONOPOLY_CELL_CONTENT_ERROR" => Some(Self::RetMonopolyCellContentError),
            "RET_MONOPOLY_ITEM_NOT_ENOUGH" => Some(Self::RetMonopolyItemNotEnough),
            "RET_MONOPOLY_CELL_CONTENT_CANNOT_GIVEUP" => {
                Some(Self::RetMonopolyCellContentCannotGiveup)
            }
            "RET_MONOPOLY_ASSET_LEVEL_INVALID" => {
                Some(Self::RetMonopolyAssetLevelInvalid)
            }
            "RET_MONOPOLY_TURN_NOT_FINISH" => Some(Self::RetMonopolyTurnNotFinish),
            "RET_MONOPOLY_GUIDE_NOT_FINISH" => Some(Self::RetMonopolyGuideNotFinish),
            "RET_MONOPOLY_RAFFLE_REWARD_REISSUED" => {
                Some(Self::RetMonopolyRaffleRewardReissued)
            }
            "RET_MONOPOLY_NO_GAME_ACTIVE" => Some(Self::RetMonopolyNoGameActive),
            "RET_MONOPOLY_GAME_RATIO_NOT_INCREASABLE" => {
                Some(Self::RetMonopolyGameRatioNotIncreasable)
            }
            "RET_MONOPOLY_GAME_RATIO_MAX" => Some(Self::RetMonopolyGameRatioMax),
            "RET_MONOPOLY_GAME_TARGET_RATIO_INVALID" => {
                Some(Self::RetMonopolyGameTargetRatioInvalid)
            }
            "RET_MONOPOLY_GAME_BINGO_FLIP_POS_INVALID" => {
                Some(Self::RetMonopolyGameBingoFlipPosInvalid)
            }
            "RET_MONOPOLY_GAME_GUESS_ALREADY_CHOOSE" => {
                Some(Self::RetMonopolyGameGuessAlreadyChoose)
            }
            "RET_MONOPOLY_GAME_GUESS_CHOOSE_INVALID" => {
                Some(Self::RetMonopolyGameGuessChooseInvalid)
            }
            "RET_MONOPOLY_GAME_GUESS_INFORMATION_ALREADY_BOUGHT" => {
                Some(Self::RetMonopolyGameGuessInformationAlreadyBought)
            }
            "RET_MONOPOLY_GAME_RAISE_RATIO_NOT_UNLOCK" => {
                Some(Self::RetMonopolyGameRaiseRatioNotUnlock)
            }
            "RET_MONOPOLY_FRIEND_NOT_SYNCED" => Some(Self::RetMonopolyFriendNotSynced),
            "RET_MONOPOLY_GET_FRIEND_RANKING_LIST_IN_CD" => {
                Some(Self::RetMonopolyGetFriendRankingListInCd)
            }
            "RET_MONOPOLY_LIKE_TARGET_NOT_FRIEND" => {
                Some(Self::RetMonopolyLikeTargetNotFriend)
            }
            "RET_MONOPOLY_DAILY_ALREADY_LIKED" => {
                Some(Self::RetMonopolyDailyAlreadyLiked)
            }
            "RET_MONOPOLY_SOCIAL_EVENT_STATUS_NOT_MATCH" => {
                Some(Self::RetMonopolySocialEventStatusNotMatch)
            }
            "RET_MONOPOLY_SOCIAL_EVENT_SERVER_CACHE_NOT_EXIST" => {
                Some(Self::RetMonopolySocialEventServerCacheNotExist)
            }
            "RET_MONOPOLY_ACTIVITY_ID_NOT_MATCH" => {
                Some(Self::RetMonopolyActivityIdNotMatch)
            }
            "RET_MONOPOLY_RAFFLE_POOL_NOT_EXIST" => {
                Some(Self::RetMonopolyRafflePoolNotExist)
            }
            "RET_MONOPOLY_RAFFLE_POOL_TIME_NOT_MATCH" => {
                Some(Self::RetMonopolyRafflePoolTimeNotMatch)
            }
            "RET_MONOPOLY_RAFFLE_POOL_PHASE_NOT_MEET" => {
                Some(Self::RetMonopolyRafflePoolPhaseNotMeet)
            }
            "RET_MONOPOLY_RAFFLE_POOL_SHOW_TIME_NOT_MEET" => {
                Some(Self::RetMonopolyRafflePoolShowTimeNotMeet)
            }
            "RET_MONOPOLY_RAFFLE_TICKET_NOT_FOUND" => {
                Some(Self::RetMonopolyRaffleTicketNotFound)
            }
            "RET_MONOPOLY_RAFFLE_TICKET_TIME_NOT_MEET" => {
                Some(Self::RetMonopolyRaffleTicketTimeNotMeet)
            }
            "RET_MONOPOLY_RAFFLE_TICKET_REWARD_ALREADY_TAKEN" => {
                Some(Self::RetMonopolyRaffleTicketRewardAlreadyTaken)
            }
            "RET_MONOPOLY_RAFFLE_POOL_NOT_IN_RAFFLE_TIME" => {
                Some(Self::RetMonopolyRafflePoolNotInRaffleTime)
            }
            "RET_MONOPOLY_MBTI_REPORT_REWARD_ALREADY_TAKEN" => {
                Some(Self::RetMonopolyMbtiReportRewardAlreadyTaken)
            }
            "RET_EVOLVE_BUILD_LEVEL_GAMING" => Some(Self::RetEvolveBuildLevelGaming),
            "RET_EVEOLVE_BUILD_LEVEL_BAN_RANDOM" => {
                Some(Self::RetEveolveBuildLevelBanRandom)
            }
            "RET_EVOLVE_BUILD_FIRST_REWARD_ALREADY_TAKEN" => {
                Some(Self::RetEvolveBuildFirstRewardAlreadyTaken)
            }
            "RET_EVOLVE_BUILD_LEVEL_UNFINISH" => Some(Self::RetEvolveBuildLevelUnfinish),
            "RET_EVOLVE_BUILD_SHOP_ABILITY_MAX_LEVEL" => {
                Some(Self::RetEvolveBuildShopAbilityMaxLevel)
            }
            "RET_EVOLVE_BUILD_SHOP_ABILITY_MIN_LEVEL" => {
                Some(Self::RetEvolveBuildShopAbilityMinLevel)
            }
            "RET_EVOLVE_BUILD_SHOP_ABILITY_NOT_GET" => {
                Some(Self::RetEvolveBuildShopAbilityNotGet)
            }
            "RET_EVOLVE_BUILD_LEVEL_LOCK" => Some(Self::RetEvolveBuildLevelLock),
            "RET_EVOLVE_BUILD_EXP_NOT_ENOUGH" => Some(Self::RetEvolveBuildExpNotEnough),
            "RET_EVOLVE_BUILD_SHOP_ABILITY_LEVEL_ERROR" => {
                Some(Self::RetEvolveBuildShopAbilityLevelError)
            }
            "RET_EVOLVE_BUILD_ACTIVITY_NOT_OPEN" => {
                Some(Self::RetEvolveBuildActivityNotOpen)
            }
            "RET_EVOLVE_BUILD_SHOP_ABILITY_EMPTY" => {
                Some(Self::RetEvolveBuildShopAbilityEmpty)
            }
            "RET_EVOLVE_BUILD_LEVEL_NOT_START" => Some(Self::RetEvolveBuildLevelNotStart),
            "RET_EVOLVE_BUILD_SHOP_LOCK" => Some(Self::RetEvolveBuildShopLock),
            "RET_EVOLVE_BUILD_REWARD_LOCK" => Some(Self::RetEvolveBuildRewardLock),
            "RET_EVOLVE_BUILD_REWARD_LEVEL_MAX" => {
                Some(Self::RetEvolveBuildRewardLevelMax)
            }
            "RET_EVOLVE_BUILD_REWARD_ALREADY_ALL_TAKEN" => {
                Some(Self::RetEvolveBuildRewardAlreadyAllTaken)
            }
            "RET_CLOCK_PARK_CONFIG_ERROR" => Some(Self::RetClockParkConfigError),
            "RET_CLOCK_PARK_EFFECT_ERROR" => Some(Self::RetClockParkEffectError),
            "RET_CLOCK_PARK_SCRIPT_ALREADY_UNLOCK" => {
                Some(Self::RetClockParkScriptAlreadyUnlock)
            }
            "RET_CLOCK_PARK_SCRIPT_UNLOCK_CONDITION_NOT_MEET" => {
                Some(Self::RetClockParkScriptUnlockConditionNotMeet)
            }
            "RET_CLOCK_PARK_TALENT_ALREADY_UNLOCK" => {
                Some(Self::RetClockParkTalentAlreadyUnlock)
            }
            "RET_CLOCK_PARK_SCRIPT_LOCKED" => Some(Self::RetClockParkScriptLocked),
            "RET_CLOCK_PARK_HAS_ONGOING_SCRIPT" => {
                Some(Self::RetClockParkHasOngoingScript)
            }
            "RET_CLOCK_PARK_NO_ONGOING_SCRIPT" => Some(Self::RetClockParkNoOngoingScript),
            "RET_CLOCK_PARK_DICE_PLACEMENT_ERROR" => {
                Some(Self::RetClockParkDicePlacementError)
            }
            "RET_CLOCK_PARK_MISMATCH_STATUS" => Some(Self::RetClockParkMismatchStatus),
            "RET_CLOCK_PARK_NO_BUFF" => Some(Self::RetClockParkNoBuff),
            "RET_CLOCK_PARK_SLOT_MACHINE_GACHA_REQ_DUPLICATED" => {
                Some(Self::RetClockParkSlotMachineGachaReqDuplicated)
            }
            "RET_CLOCK_PARK_SLOT_MACHINE_COST_NOT_ENOUGH" => {
                Some(Self::RetClockParkSlotMachineCostNotEnough)
            }
            "RET_CLOCK_PARK_SLOT_MACHINE_GACHA_CNT_EXCEED_LIMIT" => {
                Some(Self::RetClockParkSlotMachineGachaCntExceedLimit)
            }
            "RET_CLOCK_PARK_NOT_OPEN" => Some(Self::RetClockParkNotOpen),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum CmdActivityType {
    None = 0,
    CmdTakeTrialActivityRewardCsReq = 2698,
    CmdTakeLoginActivityRewardCsReq = 2662,
    CmdGetLoginActivityCsReq = 2634,
    CmdTakeMonsterResearchActivityRewardCsReq = 2616,
    CmdCurTrialActivityScNotify = 2605,
    CmdStartTrialActivityScRsp = 2603,
    CmdTakeTrialActivityRewardScRsp = 2671,
    CmdGetActivityScheduleConfigScRsp = 2609,
    CmdGetActivityScheduleConfigCsReq = 2602,
    CmdSubmitMonsterResearchActivityMaterialScRsp = 2639,
    CmdGetTrialActivityDataCsReq = 2635,
    CmdGetMonsterResearchActivityDataCsReq = 2695,
    CmdLeaveTrialActivityScRsp = 2646,
    CmdTakeMonsterResearchActivityRewardScRsp = 2630,
    CmdEnterTrialActivityStageCsReq = 2675,
    CmdGetMonsterResearchActivityDataScRsp = 2642,
    CmdTakeLoginActivityRewardScRsp = 2688,
    CmdEnterTrialActivityStageScRsp = 2693,
    CmdGetTrialActivityDataScRsp = 2644,
    CmdGetLoginActivityScRsp = 2648,
    CmdLeaveTrialActivityCsReq = 2694,
    CmdStartTrialActivityCsReq = 2649,
    CmdTrialActivityDataChangeScNotify = 2604,
    CmdSubmitMonsterResearchActivityMaterialCsReq = 2637,
}
impl CmdActivityType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            CmdActivityType::None => "CmdActivityTypeNone",
            CmdActivityType::CmdTakeTrialActivityRewardCsReq => {
                "CmdTakeTrialActivityRewardCsReq"
            }
            CmdActivityType::CmdTakeLoginActivityRewardCsReq => {
                "CmdTakeLoginActivityRewardCsReq"
            }
            CmdActivityType::CmdGetLoginActivityCsReq => "CmdGetLoginActivityCsReq",
            CmdActivityType::CmdTakeMonsterResearchActivityRewardCsReq => {
                "CmdTakeMonsterResearchActivityRewardCsReq"
            }
            CmdActivityType::CmdCurTrialActivityScNotify => "CmdCurTrialActivityScNotify",
            CmdActivityType::CmdStartTrialActivityScRsp => "CmdStartTrialActivityScRsp",
            CmdActivityType::CmdTakeTrialActivityRewardScRsp => {
                "CmdTakeTrialActivityRewardScRsp"
            }
            CmdActivityType::CmdGetActivityScheduleConfigScRsp => {
                "CmdGetActivityScheduleConfigScRsp"
            }
            CmdActivityType::CmdGetActivityScheduleConfigCsReq => {
                "CmdGetActivityScheduleConfigCsReq"
            }
            CmdActivityType::CmdSubmitMonsterResearchActivityMaterialScRsp => {
                "CmdSubmitMonsterResearchActivityMaterialScRsp"
            }
            CmdActivityType::CmdGetTrialActivityDataCsReq => {
                "CmdGetTrialActivityDataCsReq"
            }
            CmdActivityType::CmdGetMonsterResearchActivityDataCsReq => {
                "CmdGetMonsterResearchActivityDataCsReq"
            }
            CmdActivityType::CmdLeaveTrialActivityScRsp => "CmdLeaveTrialActivityScRsp",
            CmdActivityType::CmdTakeMonsterResearchActivityRewardScRsp => {
                "CmdTakeMonsterResearchActivityRewardScRsp"
            }
            CmdActivityType::CmdEnterTrialActivityStageCsReq => {
                "CmdEnterTrialActivityStageCsReq"
            }
            CmdActivityType::CmdGetMonsterResearchActivityDataScRsp => {
                "CmdGetMonsterResearchActivityDataScRsp"
            }
            CmdActivityType::CmdTakeLoginActivityRewardScRsp => {
                "CmdTakeLoginActivityRewardScRsp"
            }
            CmdActivityType::CmdEnterTrialActivityStageScRsp => {
                "CmdEnterTrialActivityStageScRsp"
            }
            CmdActivityType::CmdGetTrialActivityDataScRsp => {
                "CmdGetTrialActivityDataScRsp"
            }
            CmdActivityType::CmdGetLoginActivityScRsp => "CmdGetLoginActivityScRsp",
            CmdActivityType::CmdLeaveTrialActivityCsReq => "CmdLeaveTrialActivityCsReq",
            CmdActivityType::CmdStartTrialActivityCsReq => "CmdStartTrialActivityCsReq",
            CmdActivityType::CmdTrialActivityDataChangeScNotify => {
                "CmdTrialActivityDataChangeScNotify"
            }
            CmdActivityType::CmdSubmitMonsterResearchActivityMaterialCsReq => {
                "CmdSubmitMonsterResearchActivityMaterialCsReq"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdActivityTypeNone" => Some(Self::None),
            "CmdTakeTrialActivityRewardCsReq" => {
                Some(Self::CmdTakeTrialActivityRewardCsReq)
            }
            "CmdTakeLoginActivityRewardCsReq" => {
                Some(Self::CmdTakeLoginActivityRewardCsReq)
            }
            "CmdGetLoginActivityCsReq" => Some(Self::CmdGetLoginActivityCsReq),
            "CmdTakeMonsterResearchActivityRewardCsReq" => {
                Some(Self::CmdTakeMonsterResearchActivityRewardCsReq)
            }
            "CmdCurTrialActivityScNotify" => Some(Self::CmdCurTrialActivityScNotify),
            "CmdStartTrialActivityScRsp" => Some(Self::CmdStartTrialActivityScRsp),
            "CmdTakeTrialActivityRewardScRsp" => {
                Some(Self::CmdTakeTrialActivityRewardScRsp)
            }
            "CmdGetActivityScheduleConfigScRsp" => {
                Some(Self::CmdGetActivityScheduleConfigScRsp)
            }
            "CmdGetActivityScheduleConfigCsReq" => {
                Some(Self::CmdGetActivityScheduleConfigCsReq)
            }
            "CmdSubmitMonsterResearchActivityMaterialScRsp" => {
                Some(Self::CmdSubmitMonsterResearchActivityMaterialScRsp)
            }
            "CmdGetTrialActivityDataCsReq" => Some(Self::CmdGetTrialActivityDataCsReq),
            "CmdGetMonsterResearchActivityDataCsReq" => {
                Some(Self::CmdGetMonsterResearchActivityDataCsReq)
            }
            "CmdLeaveTrialActivityScRsp" => Some(Self::CmdLeaveTrialActivityScRsp),
            "CmdTakeMonsterResearchActivityRewardScRsp" => {
                Some(Self::CmdTakeMonsterResearchActivityRewardScRsp)
            }
            "CmdEnterTrialActivityStageCsReq" => {
                Some(Self::CmdEnterTrialActivityStageCsReq)
            }
            "CmdGetMonsterResearchActivityDataScRsp" => {
                Some(Self::CmdGetMonsterResearchActivityDataScRsp)
            }
            "CmdTakeLoginActivityRewardScRsp" => {
                Some(Self::CmdTakeLoginActivityRewardScRsp)
            }
            "CmdEnterTrialActivityStageScRsp" => {
                Some(Self::CmdEnterTrialActivityStageScRsp)
            }
            "CmdGetTrialActivityDataScRsp" => Some(Self::CmdGetTrialActivityDataScRsp),
            "CmdGetLoginActivityScRsp" => Some(Self::CmdGetLoginActivityScRsp),
            "CmdLeaveTrialActivityCsReq" => Some(Self::CmdLeaveTrialActivityCsReq),
            "CmdStartTrialActivityCsReq" => Some(Self::CmdStartTrialActivityCsReq),
            "CmdTrialActivityDataChangeScNotify" => {
                Some(Self::CmdTrialActivityDataChangeScNotify)
            }
            "CmdSubmitMonsterResearchActivityMaterialCsReq" => {
                Some(Self::CmdSubmitMonsterResearchActivityMaterialCsReq)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum TrialActivityStatus {
    None = 0,
    Finish = 1,
}
impl TrialActivityStatus {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            TrialActivityStatus::None => "TRIAL_ACTIVITY_STATUS_NONE",
            TrialActivityStatus::Finish => "TRIAL_ACTIVITY_STATUS_FINISH",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "TRIAL_ACTIVITY_STATUS_NONE" => Some(Self::None),
            "TRIAL_ACTIVITY_STATUS_FINISH" => Some(Self::Finish),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum CmdAdventureType {
    None = 0,
    CmdEnterAdventureCsReq = 1334,
    CmdEnterAdventureScRsp = 1348,
    CmdGetFarmStageGachaInfoScRsp = 1388,
    CmdGetFarmStageGachaInfoCsReq = 1362,
}
impl CmdAdventureType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            CmdAdventureType::None => "CmdAdventureTypeNone",
            CmdAdventureType::CmdEnterAdventureCsReq => "CmdEnterAdventureCsReq",
            CmdAdventureType::CmdEnterAdventureScRsp => "CmdEnterAdventureScRsp",
            CmdAdventureType::CmdGetFarmStageGachaInfoScRsp => {
                "CmdGetFarmStageGachaInfoScRsp"
            }
            CmdAdventureType::CmdGetFarmStageGachaInfoCsReq => {
                "CmdGetFarmStageGachaInfoCsReq"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdAdventureTypeNone" => Some(Self::None),
            "CmdEnterAdventureCsReq" => Some(Self::CmdEnterAdventureCsReq),
            "CmdEnterAdventureScRsp" => Some(Self::CmdEnterAdventureScRsp),
            "CmdGetFarmStageGachaInfoScRsp" => Some(Self::CmdGetFarmStageGachaInfoScRsp),
            "CmdGetFarmStageGachaInfoCsReq" => Some(Self::CmdGetFarmStageGachaInfoCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum CmdAetherDivideType {
    None = 0,
    CmdEnterAetherDivideSceneScRsp = 4848,
    CmdStartAetherDivideSceneBattleCsReq = 4802,
    CmdAetherDivideTakeChallengeRewardCsReq = 4808,
    CmdAetherDivideTainerInfoScNotify = 4861,
    CmdAetherDivideSkillItemScNotify = 4818,
    CmdStartAetherDivideChallengeBattleCsReq = 4819,
    CmdClearAetherDividePassiveSkillCsReq = 4895,
    CmdSetAetherDivideLineUpScRsp = 4806,
    CmdSwitchAetherDivideLineUpSlotCsReq = 4837,
    CmdEquipAetherDividePassiveSkillCsReq = 4833,
    CmdGetAetherDivideInfoCsReq = 4845,
    CmdEquipAetherDividePassiveSkillScRsp = 4859,
    CmdAetherDivideRefreshEndlessScRsp = 4882,
    CmdGetAetherDivideChallengeInfoCsReq = 4801,
    CmdStartAetherDivideSceneBattleScRsp = 4809,
    CmdAetherDivideTakeChallengeRewardScRsp = 4854,
    CmdSwitchAetherDivideLineUpSlotScRsp = 4839,
    CmdClearAetherDividePassiveSkillScRsp = 4842,
    CmdStartAetherDivideStageBattleScRsp = 4830,
    CmdAetherDivideRefreshEndlessScNotify = 4811,
    CmdLeaveAetherDivideSceneCsReq = 4862,
    CmdEnterAetherDivideSceneCsReq = 4834,
    CmdAetherDivideSpiritExpUpCsReq = 4885,
    CmdGetAetherDivideInfoScRsp = 4868,
    CmdGetAetherDivideChallengeInfoScRsp = 4841,
    CmdAetherDivideRefreshEndlessCsReq = 4824,
    CmdLeaveAetherDivideSceneScRsp = 4888,
    CmdStartAetherDivideStageBattleCsReq = 4816,
    CmdSetAetherDivideLineUpCsReq = 4896,
    CmdAetherDivideSpiritInfoScNotify = 4863,
    CmdAetherDivideFinishChallengeScNotify = 4828,
    CmdAetherDivideSpiritExpUpScRsp = 4856,
    CmdAetherDivideLineupScNotify = 4897,
    CmdStartAetherDivideChallengeBattleScRsp = 4843,
}
impl CmdAetherDivideType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            CmdAetherDivideType::None => "CmdAetherDivideTypeNone",
            CmdAetherDivideType::CmdEnterAetherDivideSceneScRsp => {
                "CmdEnterAetherDivideSceneScRsp"
            }
            CmdAetherDivideType::CmdStartAetherDivideSceneBattleCsReq => {
                "CmdStartAetherDivideSceneBattleCsReq"
            }
            CmdAetherDivideType::CmdAetherDivideTakeChallengeRewardCsReq => {
                "CmdAetherDivideTakeChallengeRewardCsReq"
            }
            CmdAetherDivideType::CmdAetherDivideTainerInfoScNotify => {
                "CmdAetherDivideTainerInfoScNotify"
            }
            CmdAetherDivideType::CmdAetherDivideSkillItemScNotify => {
                "CmdAetherDivideSkillItemScNotify"
            }
            CmdAetherDivideType::CmdStartAetherDivideChallengeBattleCsReq => {
                "CmdStartAetherDivideChallengeBattleCsReq"
            }
            CmdAetherDivideType::CmdClearAetherDividePassiveSkillCsReq => {
                "CmdClearAetherDividePassiveSkillCsReq"
            }
            CmdAetherDivideType::CmdSetAetherDivideLineUpScRsp => {
                "CmdSetAetherDivideLineUpScRsp"
            }
            CmdAetherDivideType::CmdSwitchAetherDivideLineUpSlotCsReq => {
                "CmdSwitchAetherDivideLineUpSlotCsReq"
            }
            CmdAetherDivideType::CmdEquipAetherDividePassiveSkillCsReq => {
                "CmdEquipAetherDividePassiveSkillCsReq"
            }
            CmdAetherDivideType::CmdGetAetherDivideInfoCsReq => {
                "CmdGetAetherDivideInfoCsReq"
            }
            CmdAetherDivideType::CmdEquipAetherDividePassiveSkillScRsp => {
                "CmdEquipAetherDividePassiveSkillScRsp"
            }
            CmdAetherDivideType::CmdAetherDivideRefreshEndlessScRsp => {
                "CmdAetherDivideRefreshEndlessScRsp"
            }
            CmdAetherDivideType::CmdGetAetherDivideChallengeInfoCsReq => {
                "CmdGetAetherDivideChallengeInfoCsReq"
            }
            CmdAetherDivideType::CmdStartAetherDivideSceneBattleScRsp => {
                "CmdStartAetherDivideSceneBattleScRsp"
            }
            CmdAetherDivideType::CmdAetherDivideTakeChallengeRewardScRsp => {
                "CmdAetherDivideTakeChallengeRewardScRsp"
            }
            CmdAetherDivideType::CmdSwitchAetherDivideLineUpSlotScRsp => {
                "CmdSwitchAetherDivideLineUpSlotScRsp"
            }
            CmdAetherDivideType::CmdClearAetherDividePassiveSkillScRsp => {
                "CmdClearAetherDividePassiveSkillScRsp"
            }
            CmdAetherDivideType::CmdStartAetherDivideStageBattleScRsp => {
                "CmdStartAetherDivideStageBattleScRsp"
            }
            CmdAetherDivideType::CmdAetherDivideRefreshEndlessScNotify => {
                "CmdAetherDivideRefreshEndlessScNotify"
            }
            CmdAetherDivideType::CmdLeaveAetherDivideSceneCsReq => {
                "CmdLeaveAetherDivideSceneCsReq"
            }
            CmdAetherDivideType::CmdEnterAetherDivideSceneCsReq => {
                "CmdEnterAetherDivideSceneCsReq"
            }
            CmdAetherDivideType::CmdAetherDivideSpiritExpUpCsReq => {
                "CmdAetherDivideSpiritExpUpCsReq"
            }
            CmdAetherDivideType::CmdGetAetherDivideInfoScRsp => {
                "CmdGetAetherDivideInfoScRsp"
            }
            CmdAetherDivideType::CmdGetAetherDivideChallengeInfoScRsp => {
                "CmdGetAetherDivideChallengeInfoScRsp"
            }
            CmdAetherDivideType::CmdAetherDivideRefreshEndlessCsReq => {
                "CmdAetherDivideRefreshEndlessCsReq"
            }
            CmdAetherDivideType::CmdLeaveAetherDivideSceneScRsp => {
                "CmdLeaveAetherDivideSceneScRsp"
            }
            CmdAetherDivideType::CmdStartAetherDivideStageBattleCsReq => {
                "CmdStartAetherDivideStageBattleCsReq"
            }
            CmdAetherDivideType::CmdSetAetherDivideLineUpCsReq => {
                "CmdSetAetherDivideLineUpCsReq"
            }
            CmdAetherDivideType::CmdAetherDivideSpiritInfoScNotify => {
                "CmdAetherDivideSpiritInfoScNotify"
            }
            CmdAetherDivideType::CmdAetherDivideFinishChallengeScNotify => {
                "CmdAetherDivideFinishChallengeScNotify"
            }
            CmdAetherDivideType::CmdAetherDivideSpiritExpUpScRsp => {
                "CmdAetherDivideSpiritExpUpScRsp"
            }
            CmdAetherDivideType::CmdAetherDivideLineupScNotify => {
                "CmdAetherDivideLineupScNotify"
            }
            CmdAetherDivideType::CmdStartAetherDivideChallengeBattleScRsp => {
                "CmdStartAetherDivideChallengeBattleScRsp"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdAetherDivideTypeNone" => Some(Self::None),
            "CmdEnterAetherDivideSceneScRsp" => {
                Some(Self::CmdEnterAetherDivideSceneScRsp)
            }
            "CmdStartAetherDivideSceneBattleCsReq" => {
                Some(Self::CmdStartAetherDivideSceneBattleCsReq)
            }
            "CmdAetherDivideTakeChallengeRewardCsReq" => {
                Some(Self::CmdAetherDivideTakeChallengeRewardCsReq)
            }
            "CmdAetherDivideTainerInfoScNotify" => {
                Some(Self::CmdAetherDivideTainerInfoScNotify)
            }
            "CmdAetherDivideSkillItemScNotify" => {
                Some(Self::CmdAetherDivideSkillItemScNotify)
            }
            "CmdStartAetherDivideChallengeBattleCsReq" => {
                Some(Self::CmdStartAetherDivideChallengeBattleCsReq)
            }
            "CmdClearAetherDividePassiveSkillCsReq" => {
                Some(Self::CmdClearAetherDividePassiveSkillCsReq)
            }
            "CmdSetAetherDivideLineUpScRsp" => Some(Self::CmdSetAetherDivideLineUpScRsp),
            "CmdSwitchAetherDivideLineUpSlotCsReq" => {
                Some(Self::CmdSwitchAetherDivideLineUpSlotCsReq)
            }
            "CmdEquipAetherDividePassiveSkillCsReq" => {
                Some(Self::CmdEquipAetherDividePassiveSkillCsReq)
            }
            "CmdGetAetherDivideInfoCsReq" => Some(Self::CmdGetAetherDivideInfoCsReq),
            "CmdEquipAetherDividePassiveSkillScRsp" => {
                Some(Self::CmdEquipAetherDividePassiveSkillScRsp)
            }
            "CmdAetherDivideRefreshEndlessScRsp" => {
                Some(Self::CmdAetherDivideRefreshEndlessScRsp)
            }
            "CmdGetAetherDivideChallengeInfoCsReq" => {
                Some(Self::CmdGetAetherDivideChallengeInfoCsReq)
            }
            "CmdStartAetherDivideSceneBattleScRsp" => {
                Some(Self::CmdStartAetherDivideSceneBattleScRsp)
            }
            "CmdAetherDivideTakeChallengeRewardScRsp" => {
                Some(Self::CmdAetherDivideTakeChallengeRewardScRsp)
            }
            "CmdSwitchAetherDivideLineUpSlotScRsp" => {
                Some(Self::CmdSwitchAetherDivideLineUpSlotScRsp)
            }
            "CmdClearAetherDividePassiveSkillScRsp" => {
                Some(Self::CmdClearAetherDividePassiveSkillScRsp)
            }
            "CmdStartAetherDivideStageBattleScRsp" => {
                Some(Self::CmdStartAetherDivideStageBattleScRsp)
            }
            "CmdAetherDivideRefreshEndlessScNotify" => {
                Some(Self::CmdAetherDivideRefreshEndlessScNotify)
            }
            "CmdLeaveAetherDivideSceneCsReq" => {
                Some(Self::CmdLeaveAetherDivideSceneCsReq)
            }
            "CmdEnterAetherDivideSceneCsReq" => {
                Some(Self::CmdEnterAetherDivideSceneCsReq)
            }
            "CmdAetherDivideSpiritExpUpCsReq" => {
                Some(Self::CmdAetherDivideSpiritExpUpCsReq)
            }
            "CmdGetAetherDivideInfoScRsp" => Some(Self::CmdGetAetherDivideInfoScRsp),
            "CmdGetAetherDivideChallengeInfoScRsp" => {
                Some(Self::CmdGetAetherDivideChallengeInfoScRsp)
            }
            "CmdAetherDivideRefreshEndlessCsReq" => {
                Some(Self::CmdAetherDivideRefreshEndlessCsReq)
            }
            "CmdLeaveAetherDivideSceneScRsp" => {
                Some(Self::CmdLeaveAetherDivideSceneScRsp)
            }
            "CmdStartAetherDivideStageBattleCsReq" => {
                Some(Self::CmdStartAetherDivideStageBattleCsReq)
            }
            "CmdSetAetherDivideLineUpCsReq" => Some(Self::CmdSetAetherDivideLineUpCsReq),
            "CmdAetherDivideSpiritInfoScNotify" => {
                Some(Self::CmdAetherDivideSpiritInfoScNotify)
            }
            "CmdAetherDivideFinishChallengeScNotify" => {
                Some(Self::CmdAetherDivideFinishChallengeScNotify)
            }
            "CmdAetherDivideSpiritExpUpScRsp" => {
                Some(Self::CmdAetherDivideSpiritExpUpScRsp)
            }
            "CmdAetherDivideLineupScNotify" => Some(Self::CmdAetherDivideLineupScNotify),
            "CmdStartAetherDivideChallengeBattleScRsp" => {
                Some(Self::CmdStartAetherDivideChallengeBattleScRsp)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum CmdAlleyType {
    None = 0,
    CmdLogisticsDetonateStarSkiffScRsp = 4779,
    CmdAlleyEventEffectNotify = 4729,
    CmdGetAlleyInfoCsReq = 4734,
    CmdAlleyTakeEventRewardCsReq = 4711,
    CmdGetSaveLogisticsMapCsReq = 4718,
    CmdLogisticsDetonateStarSkiffCsReq = 4754,
    CmdPrestigeLevelUpCsReq = 4716,
    CmdLogisticsGameScRsp = 4788,
    CmdStartAlleyEventScRsp = 4743,
    CmdAlleyPlacingGameCsReq = 4796,
    CmdAlleyPlacingGameScRsp = 4706,
    CmdStartAlleyEventCsReq = 4719,
    CmdLogisticsInfoScNotify = 4728,
    CmdAlleyOrderChangedScNotify = 4737,
    CmdAlleyShipUnlockScNotify = 4763,
    CmdAlleyEventChangeNotify = 4786,
    CmdAlleyGuaranteedFundsScRsp = 4782,
    CmdAlleyShopLevelScNotify = 4756,
    CmdAlleyShipmentEventEffectsScNotify = 4761,
    CmdSaveLogisticsCsReq = 4701,
    CmdRefreshAlleyOrderScRsp = 4742,
    CmdTakePrestigeRewardCsReq = 4745,
    CmdGetSaveLogisticsMapScRsp = 4791,
    CmdLogisticsScoreRewardSyncInfoScNotify = 4725,
    CmdGetAlleyInfoScRsp = 4748,
    CmdRefreshAlleyOrderCsReq = 4795,
    CmdAlleyShipUsedCountScNotify = 4797,
    CmdAlleyFundsScNotify = 4785,
    CmdSaveLogisticsScRsp = 4741,
    CmdAlleyGuaranteedFundsCsReq = 4724,
    CmdPrestigeLevelUpScRsp = 4730,
    CmdAlleyTakeEventRewardScRsp = 4708,
    CmdLogisticsGameCsReq = 4762,
    CmdTakePrestigeRewardScRsp = 4768,
}
impl CmdAlleyType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            CmdAlleyType::None => "CmdAlleyTypeNone",
            CmdAlleyType::CmdLogisticsDetonateStarSkiffScRsp => {
                "CmdLogisticsDetonateStarSkiffScRsp"
            }
            CmdAlleyType::CmdAlleyEventEffectNotify => "CmdAlleyEventEffectNotify",
            CmdAlleyType::CmdGetAlleyInfoCsReq => "CmdGetAlleyInfoCsReq",
            CmdAlleyType::CmdAlleyTakeEventRewardCsReq => "CmdAlleyTakeEventRewardCsReq",
            CmdAlleyType::CmdGetSaveLogisticsMapCsReq => "CmdGetSaveLogisticsMapCsReq",
            CmdAlleyType::CmdLogisticsDetonateStarSkiffCsReq => {
                "CmdLogisticsDetonateStarSkiffCsReq"
            }
            CmdAlleyType::CmdPrestigeLevelUpCsReq => "CmdPrestigeLevelUpCsReq",
            CmdAlleyType::CmdLogisticsGameScRsp => "CmdLogisticsGameScRsp",
            CmdAlleyType::CmdStartAlleyEventScRsp => "CmdStartAlleyEventScRsp",
            CmdAlleyType::CmdAlleyPlacingGameCsReq => "CmdAlleyPlacingGameCsReq",
            CmdAlleyType::CmdAlleyPlacingGameScRsp => "CmdAlleyPlacingGameScRsp",
            CmdAlleyType::CmdStartAlleyEventCsReq => "CmdStartAlleyEventCsReq",
            CmdAlleyType::CmdLogisticsInfoScNotify => "CmdLogisticsInfoScNotify",
            CmdAlleyType::CmdAlleyOrderChangedScNotify => "CmdAlleyOrderChangedScNotify",
            CmdAlleyType::CmdAlleyShipUnlockScNotify => "CmdAlleyShipUnlockScNotify",
            CmdAlleyType::CmdAlleyEventChangeNotify => "CmdAlleyEventChangeNotify",
            CmdAlleyType::CmdAlleyGuaranteedFundsScRsp => "CmdAlleyGuaranteedFundsScRsp",
            CmdAlleyType::CmdAlleyShopLevelScNotify => "CmdAlleyShopLevelScNotify",
            CmdAlleyType::CmdAlleyShipmentEventEffectsScNotify => {
                "CmdAlleyShipmentEventEffectsScNotify"
            }
            CmdAlleyType::CmdSaveLogisticsCsReq => "CmdSaveLogisticsCsReq",
            CmdAlleyType::CmdRefreshAlleyOrderScRsp => "CmdRefreshAlleyOrderScRsp",
            CmdAlleyType::CmdTakePrestigeRewardCsReq => "CmdTakePrestigeRewardCsReq",
            CmdAlleyType::CmdGetSaveLogisticsMapScRsp => "CmdGetSaveLogisticsMapScRsp",
            CmdAlleyType::CmdLogisticsScoreRewardSyncInfoScNotify => {
                "CmdLogisticsScoreRewardSyncInfoScNotify"
            }
            CmdAlleyType::CmdGetAlleyInfoScRsp => "CmdGetAlleyInfoScRsp",
            CmdAlleyType::CmdRefreshAlleyOrderCsReq => "CmdRefreshAlleyOrderCsReq",
            CmdAlleyType::CmdAlleyShipUsedCountScNotify => {
                "CmdAlleyShipUsedCountScNotify"
            }
            CmdAlleyType::CmdAlleyFundsScNotify => "CmdAlleyFundsScNotify",
            CmdAlleyType::CmdSaveLogisticsScRsp => "CmdSaveLogisticsScRsp",
            CmdAlleyType::CmdAlleyGuaranteedFundsCsReq => "CmdAlleyGuaranteedFundsCsReq",
            CmdAlleyType::CmdPrestigeLevelUpScRsp => "CmdPrestigeLevelUpScRsp",
            CmdAlleyType::CmdAlleyTakeEventRewardScRsp => "CmdAlleyTakeEventRewardScRsp",
            CmdAlleyType::CmdLogisticsGameCsReq => "CmdLogisticsGameCsReq",
            CmdAlleyType::CmdTakePrestigeRewardScRsp => "CmdTakePrestigeRewardScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdAlleyTypeNone" => Some(Self::None),
            "CmdLogisticsDetonateStarSkiffScRsp" => {
                Some(Self::CmdLogisticsDetonateStarSkiffScRsp)
            }
            "CmdAlleyEventEffectNotify" => Some(Self::CmdAlleyEventEffectNotify),
            "CmdGetAlleyInfoCsReq" => Some(Self::CmdGetAlleyInfoCsReq),
            "CmdAlleyTakeEventRewardCsReq" => Some(Self::CmdAlleyTakeEventRewardCsReq),
            "CmdGetSaveLogisticsMapCsReq" => Some(Self::CmdGetSaveLogisticsMapCsReq),
            "CmdLogisticsDetonateStarSkiffCsReq" => {
                Some(Self::CmdLogisticsDetonateStarSkiffCsReq)
            }
            "CmdPrestigeLevelUpCsReq" => Some(Self::CmdPrestigeLevelUpCsReq),
            "CmdLogisticsGameScRsp" => Some(Self::CmdLogisticsGameScRsp),
            "CmdStartAlleyEventScRsp" => Some(Self::CmdStartAlleyEventScRsp),
            "CmdAlleyPlacingGameCsReq" => Some(Self::CmdAlleyPlacingGameCsReq),
            "CmdAlleyPlacingGameScRsp" => Some(Self::CmdAlleyPlacingGameScRsp),
            "CmdStartAlleyEventCsReq" => Some(Self::CmdStartAlleyEventCsReq),
            "CmdLogisticsInfoScNotify" => Some(Self::CmdLogisticsInfoScNotify),
            "CmdAlleyOrderChangedScNotify" => Some(Self::CmdAlleyOrderChangedScNotify),
            "CmdAlleyShipUnlockScNotify" => Some(Self::CmdAlleyShipUnlockScNotify),
            "CmdAlleyEventChangeNotify" => Some(Self::CmdAlleyEventChangeNotify),
            "CmdAlleyGuaranteedFundsScRsp" => Some(Self::CmdAlleyGuaranteedFundsScRsp),
            "CmdAlleyShopLevelScNotify" => Some(Self::CmdAlleyShopLevelScNotify),
            "CmdAlleyShipmentEventEffectsScNotify" => {
                Some(Self::CmdAlleyShipmentEventEffectsScNotify)
            }
            "CmdSaveLogisticsCsReq" => Some(Self::CmdSaveLogisticsCsReq),
            "CmdRefreshAlleyOrderScRsp" => Some(Self::CmdRefreshAlleyOrderScRsp),
            "CmdTakePrestigeRewardCsReq" => Some(Self::CmdTakePrestigeRewardCsReq),
            "CmdGetSaveLogisticsMapScRsp" => Some(Self::CmdGetSaveLogisticsMapScRsp),
            "CmdLogisticsScoreRewardSyncInfoScNotify" => {
                Some(Self::CmdLogisticsScoreRewardSyncInfoScNotify)
            }
            "CmdGetAlleyInfoScRsp" => Some(Self::CmdGetAlleyInfoScRsp),
            "CmdRefreshAlleyOrderCsReq" => Some(Self::CmdRefreshAlleyOrderCsReq),
            "CmdAlleyShipUsedCountScNotify" => Some(Self::CmdAlleyShipUsedCountScNotify),
            "CmdAlleyFundsScNotify" => Some(Self::CmdAlleyFundsScNotify),
            "CmdSaveLogisticsScRsp" => Some(Self::CmdSaveLogisticsScRsp),
            "CmdAlleyGuaranteedFundsCsReq" => Some(Self::CmdAlleyGuaranteedFundsCsReq),
            "CmdPrestigeLevelUpScRsp" => Some(Self::CmdPrestigeLevelUpScRsp),
            "CmdAlleyTakeEventRewardScRsp" => Some(Self::CmdAlleyTakeEventRewardScRsp),
            "CmdLogisticsGameCsReq" => Some(Self::CmdLogisticsGameCsReq),
            "CmdTakePrestigeRewardScRsp" => Some(Self::CmdTakePrestigeRewardScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Agenkfcbkda {
    Left = 0,
    Right = 1,
    Up = 2,
    Down = 3,
    LeftUp = 4,
    LeftDown = 5,
    RightUp = 6,
    RightDown = 7,
}
impl Agenkfcbkda {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Agenkfcbkda::Left => "LEFT",
            Agenkfcbkda::Right => "RIGHT",
            Agenkfcbkda::Up => "UP",
            Agenkfcbkda::Down => "DOWN",
            Agenkfcbkda::LeftUp => "LEFT_UP",
            Agenkfcbkda::LeftDown => "LEFT_DOWN",
            Agenkfcbkda::RightUp => "RIGHT_UP",
            Agenkfcbkda::RightDown => "RIGHT_DOWN",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "LEFT" => Some(Self::Left),
            "RIGHT" => Some(Self::Right),
            "UP" => Some(Self::Up),
            "DOWN" => Some(Self::Down),
            "LEFT_UP" => Some(Self::LeftUp),
            "LEFT_DOWN" => Some(Self::LeftDown),
            "RIGHT_UP" => Some(Self::RightUp),
            "RIGHT_DOWN" => Some(Self::RightDown),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Jclkcgihaom {
    AlleyEventTypeNone = 0,
    AlleyMainEvent = 1,
    AlleyCriticalEvent = 2,
    AlleyDailyEvent = 3,
}
impl Jclkcgihaom {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Jclkcgihaom::AlleyEventTypeNone => "ALLEY_EVENT_TYPE_NONE",
            Jclkcgihaom::AlleyMainEvent => "ALLEY_MAIN_EVENT",
            Jclkcgihaom::AlleyCriticalEvent => "ALLEY_CRITICAL_EVENT",
            Jclkcgihaom::AlleyDailyEvent => "ALLEY_DAILY_EVENT",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ALLEY_EVENT_TYPE_NONE" => Some(Self::AlleyEventTypeNone),
            "ALLEY_MAIN_EVENT" => Some(Self::AlleyMainEvent),
            "ALLEY_CRITICAL_EVENT" => Some(Self::AlleyCriticalEvent),
            "ALLEY_DAILY_EVENT" => Some(Self::AlleyDailyEvent),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mahbbafefag {
    AlleyStateNone = 0,
    AlleyEventDoing = 1,
    AlleyEventFinish = 2,
    AlleyEventRewarded = 3,
}
impl Mahbbafefag {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mahbbafefag::AlleyStateNone => "ALLEY_STATE_NONE",
            Mahbbafefag::AlleyEventDoing => "ALLEY_EVENT_DOING",
            Mahbbafefag::AlleyEventFinish => "ALLEY_EVENT_FINISH",
            Mahbbafefag::AlleyEventRewarded => "ALLEY_EVENT_REWARDED",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ALLEY_STATE_NONE" => Some(Self::AlleyStateNone),
            "ALLEY_EVENT_DOING" => Some(Self::AlleyEventDoing),
            "ALLEY_EVENT_FINISH" => Some(Self::AlleyEventFinish),
            "ALLEY_EVENT_REWARDED" => Some(Self::AlleyEventRewarded),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum CmdArchiveType {
    None = 0,
    CmdGetUpdatedArchiveDataScRsp = 2388,
    CmdGetArchiveDataScRsp = 2348,
    CmdGetArchiveDataCsReq = 2334,
    CmdGetUpdatedArchiveDataCsReq = 2362,
}
impl CmdArchiveType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            CmdArchiveType::None => "CmdArchiveTypeNone",
            CmdArchiveType::CmdGetUpdatedArchiveDataScRsp => {
                "CmdGetUpdatedArchiveDataScRsp"
            }
            CmdArchiveType::CmdGetArchiveDataScRsp => "CmdGetArchiveDataScRsp",
            CmdArchiveType::CmdGetArchiveDataCsReq => "CmdGetArchiveDataCsReq",
            CmdArchiveType::CmdGetUpdatedArchiveDataCsReq => {
                "CmdGetUpdatedArchiveDataCsReq"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdArchiveTypeNone" => Some(Self::None),
            "CmdGetUpdatedArchiveDataScRsp" => Some(Self::CmdGetUpdatedArchiveDataScRsp),
            "CmdGetArchiveDataScRsp" => Some(Self::CmdGetArchiveDataScRsp),
            "CmdGetArchiveDataCsReq" => Some(Self::CmdGetArchiveDataCsReq),
            "CmdGetUpdatedArchiveDataCsReq" => Some(Self::CmdGetUpdatedArchiveDataCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mnekebcnnfb {
    CmdAvatarTypeNone = 0,
    CmdUnlockSkilltreeScRsp = 309,
    CmdDressRelicAvatarCsReq = 359,
    CmdTakeOffRelicScRsp = 337,
    CmdDressAvatarCsReq = 386,
    CmdMarkAvatarScRsp = 328,
    CmdTakePromotionRewardScRsp = 316,
    CmdRankUpAvatarCsReq = 306,
    CmdDressAvatarSkinCsReq = 330,
    CmdMarkAvatarCsReq = 341,
    CmdAvatarExpUpScRsp = 388,
    CmdTakeOffAvatarSkinCsReq = 356,
    CmdUnlockAvatarSkinScNotify = 301,
    CmdTakePromotionRewardCsReq = 339,
    CmdDressAvatarScRsp = 329,
    CmdTakeOffAvatarSkinScRsp = 363,
    CmdTakeOffRelicCsReq = 342,
    CmdTakeOffEquipmentScRsp = 368,
    CmdAvatarExpUpCsReq = 362,
    CmdDressAvatarSkinScRsp = 385,
    CmdGetAvatarDataCsReq = 334,
    CmdPromoteAvatarCsReq = 319,
    CmdRankUpAvatarScRsp = 333,
    CmdGetAvatarDataScRsp = 348,
    CmdTakeOffEquipmentCsReq = 345,
    CmdDressRelicAvatarScRsp = 395,
    CmdPromoteAvatarScRsp = 343,
    CmdAddAvatarScNotify = 396,
    CmdUnlockSkilltreeCsReq = 302,
}
impl Mnekebcnnfb {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mnekebcnnfb::CmdAvatarTypeNone => "CmdAvatarTypeNone",
            Mnekebcnnfb::CmdUnlockSkilltreeScRsp => "CmdUnlockSkilltreeScRsp",
            Mnekebcnnfb::CmdDressRelicAvatarCsReq => "CmdDressRelicAvatarCsReq",
            Mnekebcnnfb::CmdTakeOffRelicScRsp => "CmdTakeOffRelicScRsp",
            Mnekebcnnfb::CmdDressAvatarCsReq => "CmdDressAvatarCsReq",
            Mnekebcnnfb::CmdMarkAvatarScRsp => "CmdMarkAvatarScRsp",
            Mnekebcnnfb::CmdTakePromotionRewardScRsp => "CmdTakePromotionRewardScRsp",
            Mnekebcnnfb::CmdRankUpAvatarCsReq => "CmdRankUpAvatarCsReq",
            Mnekebcnnfb::CmdDressAvatarSkinCsReq => "CmdDressAvatarSkinCsReq",
            Mnekebcnnfb::CmdMarkAvatarCsReq => "CmdMarkAvatarCsReq",
            Mnekebcnnfb::CmdAvatarExpUpScRsp => "CmdAvatarExpUpScRsp",
            Mnekebcnnfb::CmdTakeOffAvatarSkinCsReq => "CmdTakeOffAvatarSkinCsReq",
            Mnekebcnnfb::CmdUnlockAvatarSkinScNotify => "CmdUnlockAvatarSkinScNotify",
            Mnekebcnnfb::CmdTakePromotionRewardCsReq => "CmdTakePromotionRewardCsReq",
            Mnekebcnnfb::CmdDressAvatarScRsp => "CmdDressAvatarScRsp",
            Mnekebcnnfb::CmdTakeOffAvatarSkinScRsp => "CmdTakeOffAvatarSkinScRsp",
            Mnekebcnnfb::CmdTakeOffRelicCsReq => "CmdTakeOffRelicCsReq",
            Mnekebcnnfb::CmdTakeOffEquipmentScRsp => "CmdTakeOffEquipmentScRsp",
            Mnekebcnnfb::CmdAvatarExpUpCsReq => "CmdAvatarExpUpCsReq",
            Mnekebcnnfb::CmdDressAvatarSkinScRsp => "CmdDressAvatarSkinScRsp",
            Mnekebcnnfb::CmdGetAvatarDataCsReq => "CmdGetAvatarDataCsReq",
            Mnekebcnnfb::CmdPromoteAvatarCsReq => "CmdPromoteAvatarCsReq",
            Mnekebcnnfb::CmdRankUpAvatarScRsp => "CmdRankUpAvatarScRsp",
            Mnekebcnnfb::CmdGetAvatarDataScRsp => "CmdGetAvatarDataScRsp",
            Mnekebcnnfb::CmdTakeOffEquipmentCsReq => "CmdTakeOffEquipmentCsReq",
            Mnekebcnnfb::CmdDressRelicAvatarScRsp => "CmdDressRelicAvatarScRsp",
            Mnekebcnnfb::CmdPromoteAvatarScRsp => "CmdPromoteAvatarScRsp",
            Mnekebcnnfb::CmdAddAvatarScNotify => "CmdAddAvatarScNotify",
            Mnekebcnnfb::CmdUnlockSkilltreeCsReq => "CmdUnlockSkilltreeCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdAvatarTypeNone" => Some(Self::CmdAvatarTypeNone),
            "CmdUnlockSkilltreeScRsp" => Some(Self::CmdUnlockSkilltreeScRsp),
            "CmdDressRelicAvatarCsReq" => Some(Self::CmdDressRelicAvatarCsReq),
            "CmdTakeOffRelicScRsp" => Some(Self::CmdTakeOffRelicScRsp),
            "CmdDressAvatarCsReq" => Some(Self::CmdDressAvatarCsReq),
            "CmdMarkAvatarScRsp" => Some(Self::CmdMarkAvatarScRsp),
            "CmdTakePromotionRewardScRsp" => Some(Self::CmdTakePromotionRewardScRsp),
            "CmdRankUpAvatarCsReq" => Some(Self::CmdRankUpAvatarCsReq),
            "CmdDressAvatarSkinCsReq" => Some(Self::CmdDressAvatarSkinCsReq),
            "CmdMarkAvatarCsReq" => Some(Self::CmdMarkAvatarCsReq),
            "CmdAvatarExpUpScRsp" => Some(Self::CmdAvatarExpUpScRsp),
            "CmdTakeOffAvatarSkinCsReq" => Some(Self::CmdTakeOffAvatarSkinCsReq),
            "CmdUnlockAvatarSkinScNotify" => Some(Self::CmdUnlockAvatarSkinScNotify),
            "CmdTakePromotionRewardCsReq" => Some(Self::CmdTakePromotionRewardCsReq),
            "CmdDressAvatarScRsp" => Some(Self::CmdDressAvatarScRsp),
            "CmdTakeOffAvatarSkinScRsp" => Some(Self::CmdTakeOffAvatarSkinScRsp),
            "CmdTakeOffRelicCsReq" => Some(Self::CmdTakeOffRelicCsReq),
            "CmdTakeOffEquipmentScRsp" => Some(Self::CmdTakeOffEquipmentScRsp),
            "CmdAvatarExpUpCsReq" => Some(Self::CmdAvatarExpUpCsReq),
            "CmdDressAvatarSkinScRsp" => Some(Self::CmdDressAvatarSkinScRsp),
            "CmdGetAvatarDataCsReq" => Some(Self::CmdGetAvatarDataCsReq),
            "CmdPromoteAvatarCsReq" => Some(Self::CmdPromoteAvatarCsReq),
            "CmdRankUpAvatarScRsp" => Some(Self::CmdRankUpAvatarScRsp),
            "CmdGetAvatarDataScRsp" => Some(Self::CmdGetAvatarDataScRsp),
            "CmdTakeOffEquipmentCsReq" => Some(Self::CmdTakeOffEquipmentCsReq),
            "CmdDressRelicAvatarScRsp" => Some(Self::CmdDressRelicAvatarScRsp),
            "CmdPromoteAvatarScRsp" => Some(Self::CmdPromoteAvatarScRsp),
            "CmdAddAvatarScNotify" => Some(Self::CmdAddAvatarScNotify),
            "CmdUnlockSkilltreeCsReq" => Some(Self::CmdUnlockSkilltreeCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum AddAvatarSrc {
    None = 0,
    Gacha = 1,
    Rogue = 2,
}
impl AddAvatarSrc {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            AddAvatarSrc::None => "ADD_AVATAR_SRC_NONE",
            AddAvatarSrc::Gacha => "ADD_AVATAR_SRC_GACHA",
            AddAvatarSrc::Rogue => "ADD_AVATAR_SRC_ROGUE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ADD_AVATAR_SRC_NONE" => Some(Self::None),
            "ADD_AVATAR_SRC_GACHA" => Some(Self::Gacha),
            "ADD_AVATAR_SRC_ROGUE" => Some(Self::Rogue),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum CmdBattleType {
    None = 0,
    CmdGetCurBattleInfoCsReq = 102,
    CmdQuitBattleScNotify = 186,
    CmdServerSimulateBattleFinishScNotify = 168,
    CmdBattleLogReportScRsp = 145,
    CmdPveBattleResultScRsp = 148,
    CmdGetCurBattleInfoScRsp = 109,
    CmdQuitBattleCsReq = 162,
    CmdSyncClientResVersionScRsp = 143,
    CmdQuitBattleScRsp = 188,
    CmdPveBattleResultCsReq = 134,
    CmdSyncClientResVersionCsReq = 119,
    CmdBattleLogReportCsReq = 129,
    CmdReBattleAfterBattleLoseCsNotify = 196,
}
impl CmdBattleType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            CmdBattleType::None => "CmdBattleTypeNone",
            CmdBattleType::CmdGetCurBattleInfoCsReq => "CmdGetCurBattleInfoCsReq",
            CmdBattleType::CmdQuitBattleScNotify => "CmdQuitBattleScNotify",
            CmdBattleType::CmdServerSimulateBattleFinishScNotify => {
                "CmdServerSimulateBattleFinishScNotify"
            }
            CmdBattleType::CmdBattleLogReportScRsp => "CmdBattleLogReportScRsp",
            CmdBattleType::CmdPveBattleResultScRsp => "CmdPVEBattleResultScRsp",
            CmdBattleType::CmdGetCurBattleInfoScRsp => "CmdGetCurBattleInfoScRsp",
            CmdBattleType::CmdQuitBattleCsReq => "CmdQuitBattleCsReq",
            CmdBattleType::CmdSyncClientResVersionScRsp => "CmdSyncClientResVersionScRsp",
            CmdBattleType::CmdQuitBattleScRsp => "CmdQuitBattleScRsp",
            CmdBattleType::CmdPveBattleResultCsReq => "CmdPVEBattleResultCsReq",
            CmdBattleType::CmdSyncClientResVersionCsReq => "CmdSyncClientResVersionCsReq",
            CmdBattleType::CmdBattleLogReportCsReq => "CmdBattleLogReportCsReq",
            CmdBattleType::CmdReBattleAfterBattleLoseCsNotify => {
                "CmdReBattleAfterBattleLoseCsNotify"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdBattleTypeNone" => Some(Self::None),
            "CmdGetCurBattleInfoCsReq" => Some(Self::CmdGetCurBattleInfoCsReq),
            "CmdQuitBattleScNotify" => Some(Self::CmdQuitBattleScNotify),
            "CmdServerSimulateBattleFinishScNotify" => {
                Some(Self::CmdServerSimulateBattleFinishScNotify)
            }
            "CmdBattleLogReportScRsp" => Some(Self::CmdBattleLogReportScRsp),
            "CmdPVEBattleResultScRsp" => Some(Self::CmdPveBattleResultScRsp),
            "CmdGetCurBattleInfoScRsp" => Some(Self::CmdGetCurBattleInfoScRsp),
            "CmdQuitBattleCsReq" => Some(Self::CmdQuitBattleCsReq),
            "CmdSyncClientResVersionScRsp" => Some(Self::CmdSyncClientResVersionScRsp),
            "CmdQuitBattleScRsp" => Some(Self::CmdQuitBattleScRsp),
            "CmdPVEBattleResultCsReq" => Some(Self::CmdPveBattleResultCsReq),
            "CmdSyncClientResVersionCsReq" => Some(Self::CmdSyncClientResVersionCsReq),
            "CmdBattleLogReportCsReq" => Some(Self::CmdBattleLogReportCsReq),
            "CmdReBattleAfterBattleLoseCsNotify" => {
                Some(Self::CmdReBattleAfterBattleLoseCsNotify)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Kplagnaccbo {
    CmdBattleCollegeTypeNone = 0,
    CmdGetBattleCollegeDataScRsp = 5748,
    CmdStartBattleCollegeCsReq = 5788,
    CmdStartBattleCollegeScRsp = 5702,
    CmdGetBattleCollegeDataCsReq = 5734,
    CmdBattleCollegeDataChangeScNotify = 5762,
}
impl Kplagnaccbo {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Kplagnaccbo::CmdBattleCollegeTypeNone => "CmdBattleCollegeTypeNone",
            Kplagnaccbo::CmdGetBattleCollegeDataScRsp => "CmdGetBattleCollegeDataScRsp",
            Kplagnaccbo::CmdStartBattleCollegeCsReq => "CmdStartBattleCollegeCsReq",
            Kplagnaccbo::CmdStartBattleCollegeScRsp => "CmdStartBattleCollegeScRsp",
            Kplagnaccbo::CmdGetBattleCollegeDataCsReq => "CmdGetBattleCollegeDataCsReq",
            Kplagnaccbo::CmdBattleCollegeDataChangeScNotify => {
                "CmdBattleCollegeDataChangeScNotify"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdBattleCollegeTypeNone" => Some(Self::CmdBattleCollegeTypeNone),
            "CmdGetBattleCollegeDataScRsp" => Some(Self::CmdGetBattleCollegeDataScRsp),
            "CmdStartBattleCollegeCsReq" => Some(Self::CmdStartBattleCollegeCsReq),
            "CmdStartBattleCollegeScRsp" => Some(Self::CmdStartBattleCollegeScRsp),
            "CmdGetBattleCollegeDataCsReq" => Some(Self::CmdGetBattleCollegeDataCsReq),
            "CmdBattleCollegeDataChangeScNotify" => {
                Some(Self::CmdBattleCollegeDataChangeScNotify)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Hnfdhilffak {
    CmdBattlePassTypeNone = 0,
    CmdTakeBpRewardScRsp = 3002,
    CmdTakeAllRewardScRsp = 3086,
    CmdTakeBpRewardCsReq = 3088,
    CmdTakeAllRewardCsReq = 3043,
    CmdBattlePassInfoNotify = 3034,
    CmdBuyBpLevelScRsp = 3019,
    CmdBuyBpLevelCsReq = 3009,
}
impl Hnfdhilffak {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Hnfdhilffak::CmdBattlePassTypeNone => "CmdBattlePassTypeNone",
            Hnfdhilffak::CmdTakeBpRewardScRsp => "CmdTakeBpRewardScRsp",
            Hnfdhilffak::CmdTakeAllRewardScRsp => "CmdTakeAllRewardScRsp",
            Hnfdhilffak::CmdTakeBpRewardCsReq => "CmdTakeBpRewardCsReq",
            Hnfdhilffak::CmdTakeAllRewardCsReq => "CmdTakeAllRewardCsReq",
            Hnfdhilffak::CmdBattlePassInfoNotify => "CmdBattlePassInfoNotify",
            Hnfdhilffak::CmdBuyBpLevelScRsp => "CmdBuyBpLevelScRsp",
            Hnfdhilffak::CmdBuyBpLevelCsReq => "CmdBuyBpLevelCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdBattlePassTypeNone" => Some(Self::CmdBattlePassTypeNone),
            "CmdTakeBpRewardScRsp" => Some(Self::CmdTakeBpRewardScRsp),
            "CmdTakeAllRewardScRsp" => Some(Self::CmdTakeAllRewardScRsp),
            "CmdTakeBpRewardCsReq" => Some(Self::CmdTakeBpRewardCsReq),
            "CmdTakeAllRewardCsReq" => Some(Self::CmdTakeAllRewardCsReq),
            "CmdBattlePassInfoNotify" => Some(Self::CmdBattlePassInfoNotify),
            "CmdBuyBpLevelScRsp" => Some(Self::CmdBuyBpLevelScRsp),
            "CmdBuyBpLevelCsReq" => Some(Self::CmdBuyBpLevelCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Hepghpgngii {
    BpTierTypeNone = 0,
    BpTierTypeFree = 1,
    BpTierTypePremium1 = 2,
    BpTierTypePremium2 = 3,
}
impl Hepghpgngii {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Hepghpgngii::BpTierTypeNone => "BP_TIER_TYPE_NONE",
            Hepghpgngii::BpTierTypeFree => "BP_TIER_TYPE_FREE",
            Hepghpgngii::BpTierTypePremium1 => "BP_TIER_TYPE_PREMIUM_1",
            Hepghpgngii::BpTierTypePremium2 => "BP_TIER_TYPE_PREMIUM_2",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "BP_TIER_TYPE_NONE" => Some(Self::BpTierTypeNone),
            "BP_TIER_TYPE_FREE" => Some(Self::BpTierTypeFree),
            "BP_TIER_TYPE_PREMIUM_1" => Some(Self::BpTierTypePremium1),
            "BP_TIER_TYPE_PREMIUM_2" => Some(Self::BpTierTypePremium2),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Cplhlmcicgp {
    BpRewaradTypeNone = 0,
    BpRewaradTypeFree = 1,
    BpRewaradTypePremium1 = 2,
    BpRewaradTypePremium2 = 3,
    BpRewaradTypePremiumOptional = 4,
}
impl Cplhlmcicgp {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Cplhlmcicgp::BpRewaradTypeNone => "BP_REWARAD_TYPE_NONE",
            Cplhlmcicgp::BpRewaradTypeFree => "BP_REWARAD_TYPE_FREE",
            Cplhlmcicgp::BpRewaradTypePremium1 => "BP_REWARAD_TYPE_PREMIUM_1",
            Cplhlmcicgp::BpRewaradTypePremium2 => "BP_REWARAD_TYPE_PREMIUM_2",
            Cplhlmcicgp::BpRewaradTypePremiumOptional => {
                "BP_REWARAD_TYPE_PREMIUM_OPTIONAL"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "BP_REWARAD_TYPE_NONE" => Some(Self::BpRewaradTypeNone),
            "BP_REWARAD_TYPE_FREE" => Some(Self::BpRewaradTypeFree),
            "BP_REWARAD_TYPE_PREMIUM_1" => Some(Self::BpRewaradTypePremium1),
            "BP_REWARAD_TYPE_PREMIUM_2" => Some(Self::BpRewaradTypePremium2),
            "BP_REWARAD_TYPE_PREMIUM_OPTIONAL" => {
                Some(Self::BpRewaradTypePremiumOptional)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Lpegmiilfjm {
    CmdBoxingClubTypeNone = 0,
    CmdMatchBoxingClubOpponentScRsp = 4288,
    CmdSetBoxingClubResonanceLineupScRsp = 4206,
    CmdMatchBoxingClubOpponentCsReq = 4262,
    CmdGiveUpBoxingClubChallengeScRsp = 4243,
    CmdStartBoxingClubBattleCsReq = 4202,
    CmdGetBoxingClubInfoCsReq = 4234,
    CmdChooseBoxingClubResonanceCsReq = 4245,
    CmdSetBoxingClubResonanceLineupCsReq = 4296,
    CmdBoxingClubChallengeUpdateScNotify = 4229,
    CmdChooseBoxingClubStageOptionalBuffScRsp = 4259,
    CmdBoxingClubRewardScNotify = 4286,
    CmdGetBoxingClubInfoScRsp = 4248,
    CmdChooseBoxingClubResonanceScRsp = 4268,
    CmdGiveUpBoxingClubChallengeCsReq = 4219,
    CmdStartBoxingClubBattleScRsp = 4209,
    CmdChooseBoxingClubStageOptionalBuffCsReq = 4233,
}
impl Lpegmiilfjm {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Lpegmiilfjm::CmdBoxingClubTypeNone => "CmdBoxingClubTypeNone",
            Lpegmiilfjm::CmdMatchBoxingClubOpponentScRsp => {
                "CmdMatchBoxingClubOpponentScRsp"
            }
            Lpegmiilfjm::CmdSetBoxingClubResonanceLineupScRsp => {
                "CmdSetBoxingClubResonanceLineupScRsp"
            }
            Lpegmiilfjm::CmdMatchBoxingClubOpponentCsReq => {
                "CmdMatchBoxingClubOpponentCsReq"
            }
            Lpegmiilfjm::CmdGiveUpBoxingClubChallengeScRsp => {
                "CmdGiveUpBoxingClubChallengeScRsp"
            }
            Lpegmiilfjm::CmdStartBoxingClubBattleCsReq => "CmdStartBoxingClubBattleCsReq",
            Lpegmiilfjm::CmdGetBoxingClubInfoCsReq => "CmdGetBoxingClubInfoCsReq",
            Lpegmiilfjm::CmdChooseBoxingClubResonanceCsReq => {
                "CmdChooseBoxingClubResonanceCsReq"
            }
            Lpegmiilfjm::CmdSetBoxingClubResonanceLineupCsReq => {
                "CmdSetBoxingClubResonanceLineupCsReq"
            }
            Lpegmiilfjm::CmdBoxingClubChallengeUpdateScNotify => {
                "CmdBoxingClubChallengeUpdateScNotify"
            }
            Lpegmiilfjm::CmdChooseBoxingClubStageOptionalBuffScRsp => {
                "CmdChooseBoxingClubStageOptionalBuffScRsp"
            }
            Lpegmiilfjm::CmdBoxingClubRewardScNotify => "CmdBoxingClubRewardScNotify",
            Lpegmiilfjm::CmdGetBoxingClubInfoScRsp => "CmdGetBoxingClubInfoScRsp",
            Lpegmiilfjm::CmdChooseBoxingClubResonanceScRsp => {
                "CmdChooseBoxingClubResonanceScRsp"
            }
            Lpegmiilfjm::CmdGiveUpBoxingClubChallengeCsReq => {
                "CmdGiveUpBoxingClubChallengeCsReq"
            }
            Lpegmiilfjm::CmdStartBoxingClubBattleScRsp => "CmdStartBoxingClubBattleScRsp",
            Lpegmiilfjm::CmdChooseBoxingClubStageOptionalBuffCsReq => {
                "CmdChooseBoxingClubStageOptionalBuffCsReq"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdBoxingClubTypeNone" => Some(Self::CmdBoxingClubTypeNone),
            "CmdMatchBoxingClubOpponentScRsp" => {
                Some(Self::CmdMatchBoxingClubOpponentScRsp)
            }
            "CmdSetBoxingClubResonanceLineupScRsp" => {
                Some(Self::CmdSetBoxingClubResonanceLineupScRsp)
            }
            "CmdMatchBoxingClubOpponentCsReq" => {
                Some(Self::CmdMatchBoxingClubOpponentCsReq)
            }
            "CmdGiveUpBoxingClubChallengeScRsp" => {
                Some(Self::CmdGiveUpBoxingClubChallengeScRsp)
            }
            "CmdStartBoxingClubBattleCsReq" => Some(Self::CmdStartBoxingClubBattleCsReq),
            "CmdGetBoxingClubInfoCsReq" => Some(Self::CmdGetBoxingClubInfoCsReq),
            "CmdChooseBoxingClubResonanceCsReq" => {
                Some(Self::CmdChooseBoxingClubResonanceCsReq)
            }
            "CmdSetBoxingClubResonanceLineupCsReq" => {
                Some(Self::CmdSetBoxingClubResonanceLineupCsReq)
            }
            "CmdBoxingClubChallengeUpdateScNotify" => {
                Some(Self::CmdBoxingClubChallengeUpdateScNotify)
            }
            "CmdChooseBoxingClubStageOptionalBuffScRsp" => {
                Some(Self::CmdChooseBoxingClubStageOptionalBuffScRsp)
            }
            "CmdBoxingClubRewardScNotify" => Some(Self::CmdBoxingClubRewardScNotify),
            "CmdGetBoxingClubInfoScRsp" => Some(Self::CmdGetBoxingClubInfoScRsp),
            "CmdChooseBoxingClubResonanceScRsp" => {
                Some(Self::CmdChooseBoxingClubResonanceScRsp)
            }
            "CmdGiveUpBoxingClubChallengeCsReq" => {
                Some(Self::CmdGiveUpBoxingClubChallengeCsReq)
            }
            "CmdStartBoxingClubBattleScRsp" => Some(Self::CmdStartBoxingClubBattleScRsp),
            "CmdChooseBoxingClubStageOptionalBuffCsReq" => {
                Some(Self::CmdChooseBoxingClubStageOptionalBuffCsReq)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Pnnbhogkeeh {
    CmdChallengeTypeNone = 0,
    CmdGetChallengeGroupStatisticsCsReq = 1795,
    CmdLeaveChallengeCsReq = 1702,
    CmdGetCurChallengeScRsp = 1745,
    CmdTakeChallengeRewardScRsp = 1759,
    CmdGetChallengeGroupStatisticsScRsp = 1742,
    CmdStartChallengeCsReq = 1762,
    CmdLeaveChallengeScRsp = 1709,
    CmdTakeChallengeRewardCsReq = 1733,
    CmdGetCurChallengeCsReq = 1729,
    CmdChallengeSettleNotify = 1719,
    CmdChallengeLineupNotify = 1768,
    CmdGetChallengeScRsp = 1748,
    CmdStartChallengeScRsp = 1788,
    CmdGetChallengeCsReq = 1734,
}
impl Pnnbhogkeeh {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Pnnbhogkeeh::CmdChallengeTypeNone => "CmdChallengeTypeNone",
            Pnnbhogkeeh::CmdGetChallengeGroupStatisticsCsReq => {
                "CmdGetChallengeGroupStatisticsCsReq"
            }
            Pnnbhogkeeh::CmdLeaveChallengeCsReq => "CmdLeaveChallengeCsReq",
            Pnnbhogkeeh::CmdGetCurChallengeScRsp => "CmdGetCurChallengeScRsp",
            Pnnbhogkeeh::CmdTakeChallengeRewardScRsp => "CmdTakeChallengeRewardScRsp",
            Pnnbhogkeeh::CmdGetChallengeGroupStatisticsScRsp => {
                "CmdGetChallengeGroupStatisticsScRsp"
            }
            Pnnbhogkeeh::CmdStartChallengeCsReq => "CmdStartChallengeCsReq",
            Pnnbhogkeeh::CmdLeaveChallengeScRsp => "CmdLeaveChallengeScRsp",
            Pnnbhogkeeh::CmdTakeChallengeRewardCsReq => "CmdTakeChallengeRewardCsReq",
            Pnnbhogkeeh::CmdGetCurChallengeCsReq => "CmdGetCurChallengeCsReq",
            Pnnbhogkeeh::CmdChallengeSettleNotify => "CmdChallengeSettleNotify",
            Pnnbhogkeeh::CmdChallengeLineupNotify => "CmdChallengeLineupNotify",
            Pnnbhogkeeh::CmdGetChallengeScRsp => "CmdGetChallengeScRsp",
            Pnnbhogkeeh::CmdStartChallengeScRsp => "CmdStartChallengeScRsp",
            Pnnbhogkeeh::CmdGetChallengeCsReq => "CmdGetChallengeCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdChallengeTypeNone" => Some(Self::CmdChallengeTypeNone),
            "CmdGetChallengeGroupStatisticsCsReq" => {
                Some(Self::CmdGetChallengeGroupStatisticsCsReq)
            }
            "CmdLeaveChallengeCsReq" => Some(Self::CmdLeaveChallengeCsReq),
            "CmdGetCurChallengeScRsp" => Some(Self::CmdGetCurChallengeScRsp),
            "CmdTakeChallengeRewardScRsp" => Some(Self::CmdTakeChallengeRewardScRsp),
            "CmdGetChallengeGroupStatisticsScRsp" => {
                Some(Self::CmdGetChallengeGroupStatisticsScRsp)
            }
            "CmdStartChallengeCsReq" => Some(Self::CmdStartChallengeCsReq),
            "CmdLeaveChallengeScRsp" => Some(Self::CmdLeaveChallengeScRsp),
            "CmdTakeChallengeRewardCsReq" => Some(Self::CmdTakeChallengeRewardCsReq),
            "CmdGetCurChallengeCsReq" => Some(Self::CmdGetCurChallengeCsReq),
            "CmdChallengeSettleNotify" => Some(Self::CmdChallengeSettleNotify),
            "CmdChallengeLineupNotify" => Some(Self::CmdChallengeLineupNotify),
            "CmdGetChallengeScRsp" => Some(Self::CmdGetChallengeScRsp),
            "CmdStartChallengeScRsp" => Some(Self::CmdStartChallengeScRsp),
            "CmdGetChallengeCsReq" => Some(Self::CmdGetChallengeCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ChallengeStatus {
    ChallengeUnknown = 0,
    ChallengeDoing = 1,
    ChallengeFinish = 2,
    ChallengeFailed = 3,
}
impl ChallengeStatus {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            ChallengeStatus::ChallengeUnknown => "CHALLENGE_UNKNOWN",
            ChallengeStatus::ChallengeDoing => "CHALLENGE_DOING",
            ChallengeStatus::ChallengeFinish => "CHALLENGE_FINISH",
            ChallengeStatus::ChallengeFailed => "CHALLENGE_FAILED",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CHALLENGE_UNKNOWN" => Some(Self::ChallengeUnknown),
            "CHALLENGE_DOING" => Some(Self::ChallengeDoing),
            "CHALLENGE_FINISH" => Some(Self::ChallengeFinish),
            "CHALLENGE_FAILED" => Some(Self::ChallengeFailed),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Galijhmhgcg {
    CmdChatTypeNone = 0,
    CmdBatchMarkChatEmojiScRsp = 3906,
    CmdSendMsgCsReq = 3934,
    CmdGetPrivateChatHistoryScRsp = 3909,
    CmdGetPrivateChatHistoryCsReq = 3902,
    CmdGetChatEmojiListScRsp = 3929,
    CmdPrivateMsgOfflineUsersScNotify = 3988,
    CmdMarkChatEmojiCsReq = 3945,
    CmdMarkChatEmojiScRsp = 3968,
    CmdBatchMarkChatEmojiCsReq = 3996,
    CmdGetLoginChatInfoCsReq = 3933,
    CmdGetLoginChatInfoScRsp = 3959,
    CmdGetChatFriendHistoryScRsp = 3943,
    CmdGetChatEmojiListCsReq = 3986,
    CmdGetChatFriendHistoryCsReq = 3919,
    CmdSendMsgScRsp = 3948,
    CmdRevcMsgScNotify = 3962,
}
impl Galijhmhgcg {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Galijhmhgcg::CmdChatTypeNone => "CmdChatTypeNone",
            Galijhmhgcg::CmdBatchMarkChatEmojiScRsp => "CmdBatchMarkChatEmojiScRsp",
            Galijhmhgcg::CmdSendMsgCsReq => "CmdSendMsgCsReq",
            Galijhmhgcg::CmdGetPrivateChatHistoryScRsp => "CmdGetPrivateChatHistoryScRsp",
            Galijhmhgcg::CmdGetPrivateChatHistoryCsReq => "CmdGetPrivateChatHistoryCsReq",
            Galijhmhgcg::CmdGetChatEmojiListScRsp => "CmdGetChatEmojiListScRsp",
            Galijhmhgcg::CmdPrivateMsgOfflineUsersScNotify => {
                "CmdPrivateMsgOfflineUsersScNotify"
            }
            Galijhmhgcg::CmdMarkChatEmojiCsReq => "CmdMarkChatEmojiCsReq",
            Galijhmhgcg::CmdMarkChatEmojiScRsp => "CmdMarkChatEmojiScRsp",
            Galijhmhgcg::CmdBatchMarkChatEmojiCsReq => "CmdBatchMarkChatEmojiCsReq",
            Galijhmhgcg::CmdGetLoginChatInfoCsReq => "CmdGetLoginChatInfoCsReq",
            Galijhmhgcg::CmdGetLoginChatInfoScRsp => "CmdGetLoginChatInfoScRsp",
            Galijhmhgcg::CmdGetChatFriendHistoryScRsp => "CmdGetChatFriendHistoryScRsp",
            Galijhmhgcg::CmdGetChatEmojiListCsReq => "CmdGetChatEmojiListCsReq",
            Galijhmhgcg::CmdGetChatFriendHistoryCsReq => "CmdGetChatFriendHistoryCsReq",
            Galijhmhgcg::CmdSendMsgScRsp => "CmdSendMsgScRsp",
            Galijhmhgcg::CmdRevcMsgScNotify => "CmdRevcMsgScNotify",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdChatTypeNone" => Some(Self::CmdChatTypeNone),
            "CmdBatchMarkChatEmojiScRsp" => Some(Self::CmdBatchMarkChatEmojiScRsp),
            "CmdSendMsgCsReq" => Some(Self::CmdSendMsgCsReq),
            "CmdGetPrivateChatHistoryScRsp" => Some(Self::CmdGetPrivateChatHistoryScRsp),
            "CmdGetPrivateChatHistoryCsReq" => Some(Self::CmdGetPrivateChatHistoryCsReq),
            "CmdGetChatEmojiListScRsp" => Some(Self::CmdGetChatEmojiListScRsp),
            "CmdPrivateMsgOfflineUsersScNotify" => {
                Some(Self::CmdPrivateMsgOfflineUsersScNotify)
            }
            "CmdMarkChatEmojiCsReq" => Some(Self::CmdMarkChatEmojiCsReq),
            "CmdMarkChatEmojiScRsp" => Some(Self::CmdMarkChatEmojiScRsp),
            "CmdBatchMarkChatEmojiCsReq" => Some(Self::CmdBatchMarkChatEmojiCsReq),
            "CmdGetLoginChatInfoCsReq" => Some(Self::CmdGetLoginChatInfoCsReq),
            "CmdGetLoginChatInfoScRsp" => Some(Self::CmdGetLoginChatInfoScRsp),
            "CmdGetChatFriendHistoryScRsp" => Some(Self::CmdGetChatFriendHistoryScRsp),
            "CmdGetChatEmojiListCsReq" => Some(Self::CmdGetChatEmojiListCsReq),
            "CmdGetChatFriendHistoryCsReq" => Some(Self::CmdGetChatFriendHistoryCsReq),
            "CmdSendMsgScRsp" => Some(Self::CmdSendMsgScRsp),
            "CmdRevcMsgScNotify" => Some(Self::CmdRevcMsgScNotify),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Hcogapcpbio {
    CmdChessRogueTypeNone = 0,
    CmdChessRogueSkipTeachingLevelCsReq = 5465,
    CmdGetChessRogueBuffEnhanceInfoScRsp = 5426,
    CmdEnhanceChessRogueBuffCsReq = 5592,
    CmdChessRogueQueryAeonDimensionsScRsp = 5466,
    CmdChessRogueNousGetRogueTalentInfoCsReq = 5448,
    CmdChessRogueSkipTeachingLevelScRsp = 5474,
    CmdChessRogueEnterCellCsReq = 5518,
    CmdEnhanceChessRogueBuffScRsp = 5468,
    CmdGetChessRogueStoryInfoScRsp = 5527,
    CmdChessRogueCheatRollCsReq = 5544,
    CmdChessRogueRollDiceScRsp = 5546,
    CmdChessRogueEnterCsReq = 5456,
    CmdFinishChessRogueSubStoryScRsp = 5437,
    CmdChessRogueEnterNextLayerScRsp = 5436,
    CmdChessRogueUpdateMoneyInfoScNotify = 5480,
    CmdSelectChessRogueNousSubStoryScRsp = 5454,
    CmdGetChessRogueStoryAeonTalkInfoCsReq = 5477,
    CmdChessRogueUpdateReviveInfoScNotify = 5419,
    CmdChessRogueQueryBpScRsp = 5598,
    CmdChessRogueSelectBpScRsp = 5416,
    CmdChessRogueMoveCellNotify = 5586,
    CmdChessRogueUpdateUnlockLevelScNotify = 5582,
    CmdChessRogueGoAheadCsReq = 5458,
    CmdChessRogueGiveUpScRsp = 5511,
    CmdChessRogueRollDiceCsReq = 5535,
    CmdGetChessRogueNousStoryInfoScRsp = 5561,
    CmdChessRogueReviveAvatarScRsp = 5470,
    CmdChessRogueNousDiceSurfaceUnlockNotify = 5413,
    CmdChessRogueUpdateLevelBaseInfoScNotify = 5432,
    CmdGetChessRogueBuffEnhanceInfoCsReq = 5522,
    CmdChessRogueGiveUpRollScRsp = 5576,
    CmdChessRogueEnterScRsp = 5559,
    CmdChessRogueCheatRollScRsp = 5599,
    CmdChessRogueQuitCsReq = 5575,
    CmdChessRogueGiveUpRollCsReq = 5558,
    CmdSyncChessRogueNousValueScNotify = 5537,
    CmdSelectChessRogueNousSubStoryCsReq = 5484,
    CmdChessRogueLayerAccountInfoNotify = 5507,
    CmdChessRogueNousEnableRogueTalentScRsp = 5425,
    CmdChessRogueReviveAvatarCsReq = 5539,
    CmdChessRogueQueryScRsp = 5597,
    CmdChessRogueQuestFinishNotify = 5565,
    CmdGetChessRogueStoryInfoCsReq = 5532,
    CmdGetChessRogueStoryAeonTalkInfoScRsp = 5580,
    CmdSyncChessRogueNousSubStoryScNotify = 5420,
    CmdEnterChessRogueAeonRoomScRsp = 5496,
    CmdChessRogueQueryBpCsReq = 5495,
    CmdChessRogueCellUpdateNotify = 5508,
    CmdSelectChessRogueSubStoryCsReq = 5600,
    CmdChessRogueSelectBpCsReq = 5549,
    CmdSyncChessRogueNousMainStoryScNotify = 5487,
    CmdChessRogueQueryCsReq = 5459,
    CmdChessRogueQuitScRsp = 5412,
    CmdChessRogueSelectCellCsReq = 5434,
    CmdFinishChessRogueSubStoryCsReq = 5405,
    CmdChessRogueNousEditDiceCsReq = 5550,
    CmdGetChessRogueNousStoryInfoCsReq = 5415,
    CmdChessRogueQueryAeonDimensionsCsReq = 5529,
    CmdChessRogueReRollDiceCsReq = 5490,
    CmdChessRogueNousEnableRogueTalentCsReq = 5570,
    CmdChessRogueReRollDiceScRsp = 5500,
    CmdChessRogueChangeyAeonDimensionNotify = 5557,
    CmdChessRogueSelectCellScRsp = 5450,
    CmdChessRogueStartScRsp = 5471,
    CmdChessRogueUpdateBoardScNotify = 5502,
    CmdChessRogueEnterCellScRsp = 5540,
    CmdChessRogueGoAheadScRsp = 5431,
    CmdChessRogueConfirmRollCsReq = 5424,
    CmdChessRogueFinishCurRoomNotify = 5422,
    CmdChessRogueUpdateAllowedSelectCellScNotify = 5577,
    CmdChessRogueStartCsReq = 5596,
    CmdChessRogueUpdateDicePassiveAccumulateValueScNotify = 5542,
    CmdChessRogueGiveUpCsReq = 5463,
    CmdFinishChessRogueNousSubStoryCsReq = 5411,
    CmdChessRogueUpdateAeonModifierValueScNotify = 5498,
    CmdChessRogueUpdateDiceInfoScNotify = 5526,
    CmdChessRogueNousGetRogueTalentInfoScRsp = 5429,
    CmdSelectChessRogueSubStoryScRsp = 5536,
    CmdChessRogueConfirmRollScRsp = 5523,
    CmdSyncChessRogueMainStoryFinishScNotify = 5573,
    CmdChessRogueNousDiceUpdateNotify = 5452,
    CmdFinishChessRogueNousSubStoryScRsp = 5501,
    CmdChessRoguePickAvatarCsReq = 5517,
    CmdChessRogueLeaveCsReq = 5473,
    CmdChessRogueNousEditDiceScRsp = 5482,
    CmdChessRogueEnterNextLayerCsReq = 5543,
    CmdChessRoguePickAvatarScRsp = 5449,
    CmdChessRogueUpdateActionPointScNotify = 5469,
    CmdChessRogueLeaveScRsp = 5531,
    CmdEnterChessRogueAeonRoomCsReq = 5589,
}
impl Hcogapcpbio {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Hcogapcpbio::CmdChessRogueTypeNone => "CmdChessRogueTypeNone",
            Hcogapcpbio::CmdChessRogueSkipTeachingLevelCsReq => {
                "CmdChessRogueSkipTeachingLevelCsReq"
            }
            Hcogapcpbio::CmdGetChessRogueBuffEnhanceInfoScRsp => {
                "CmdGetChessRogueBuffEnhanceInfoScRsp"
            }
            Hcogapcpbio::CmdEnhanceChessRogueBuffCsReq => "CmdEnhanceChessRogueBuffCsReq",
            Hcogapcpbio::CmdChessRogueQueryAeonDimensionsScRsp => {
                "CmdChessRogueQueryAeonDimensionsScRsp"
            }
            Hcogapcpbio::CmdChessRogueNousGetRogueTalentInfoCsReq => {
                "CmdChessRogueNousGetRogueTalentInfoCsReq"
            }
            Hcogapcpbio::CmdChessRogueSkipTeachingLevelScRsp => {
                "CmdChessRogueSkipTeachingLevelScRsp"
            }
            Hcogapcpbio::CmdChessRogueEnterCellCsReq => "CmdChessRogueEnterCellCsReq",
            Hcogapcpbio::CmdEnhanceChessRogueBuffScRsp => "CmdEnhanceChessRogueBuffScRsp",
            Hcogapcpbio::CmdGetChessRogueStoryInfoScRsp => {
                "CmdGetChessRogueStoryInfoScRsp"
            }
            Hcogapcpbio::CmdChessRogueCheatRollCsReq => "CmdChessRogueCheatRollCsReq",
            Hcogapcpbio::CmdChessRogueRollDiceScRsp => "CmdChessRogueRollDiceScRsp",
            Hcogapcpbio::CmdChessRogueEnterCsReq => "CmdChessRogueEnterCsReq",
            Hcogapcpbio::CmdFinishChessRogueSubStoryScRsp => {
                "CmdFinishChessRogueSubStoryScRsp"
            }
            Hcogapcpbio::CmdChessRogueEnterNextLayerScRsp => {
                "CmdChessRogueEnterNextLayerScRsp"
            }
            Hcogapcpbio::CmdChessRogueUpdateMoneyInfoScNotify => {
                "CmdChessRogueUpdateMoneyInfoScNotify"
            }
            Hcogapcpbio::CmdSelectChessRogueNousSubStoryScRsp => {
                "CmdSelectChessRogueNousSubStoryScRsp"
            }
            Hcogapcpbio::CmdGetChessRogueStoryAeonTalkInfoCsReq => {
                "CmdGetChessRogueStoryAeonTalkInfoCsReq"
            }
            Hcogapcpbio::CmdChessRogueUpdateReviveInfoScNotify => {
                "CmdChessRogueUpdateReviveInfoScNotify"
            }
            Hcogapcpbio::CmdChessRogueQueryBpScRsp => "CmdChessRogueQueryBpScRsp",
            Hcogapcpbio::CmdChessRogueSelectBpScRsp => "CmdChessRogueSelectBpScRsp",
            Hcogapcpbio::CmdChessRogueMoveCellNotify => "CmdChessRogueMoveCellNotify",
            Hcogapcpbio::CmdChessRogueUpdateUnlockLevelScNotify => {
                "CmdChessRogueUpdateUnlockLevelScNotify"
            }
            Hcogapcpbio::CmdChessRogueGoAheadCsReq => "CmdChessRogueGoAheadCsReq",
            Hcogapcpbio::CmdChessRogueGiveUpScRsp => "CmdChessRogueGiveUpScRsp",
            Hcogapcpbio::CmdChessRogueRollDiceCsReq => "CmdChessRogueRollDiceCsReq",
            Hcogapcpbio::CmdGetChessRogueNousStoryInfoScRsp => {
                "CmdGetChessRogueNousStoryInfoScRsp"
            }
            Hcogapcpbio::CmdChessRogueReviveAvatarScRsp => {
                "CmdChessRogueReviveAvatarScRsp"
            }
            Hcogapcpbio::CmdChessRogueNousDiceSurfaceUnlockNotify => {
                "CmdChessRogueNousDiceSurfaceUnlockNotify"
            }
            Hcogapcpbio::CmdChessRogueUpdateLevelBaseInfoScNotify => {
                "CmdChessRogueUpdateLevelBaseInfoScNotify"
            }
            Hcogapcpbio::CmdGetChessRogueBuffEnhanceInfoCsReq => {
                "CmdGetChessRogueBuffEnhanceInfoCsReq"
            }
            Hcogapcpbio::CmdChessRogueGiveUpRollScRsp => "CmdChessRogueGiveUpRollScRsp",
            Hcogapcpbio::CmdChessRogueEnterScRsp => "CmdChessRogueEnterScRsp",
            Hcogapcpbio::CmdChessRogueCheatRollScRsp => "CmdChessRogueCheatRollScRsp",
            Hcogapcpbio::CmdChessRogueQuitCsReq => "CmdChessRogueQuitCsReq",
            Hcogapcpbio::CmdChessRogueGiveUpRollCsReq => "CmdChessRogueGiveUpRollCsReq",
            Hcogapcpbio::CmdSyncChessRogueNousValueScNotify => {
                "CmdSyncChessRogueNousValueScNotify"
            }
            Hcogapcpbio::CmdSelectChessRogueNousSubStoryCsReq => {
                "CmdSelectChessRogueNousSubStoryCsReq"
            }
            Hcogapcpbio::CmdChessRogueLayerAccountInfoNotify => {
                "CmdChessRogueLayerAccountInfoNotify"
            }
            Hcogapcpbio::CmdChessRogueNousEnableRogueTalentScRsp => {
                "CmdChessRogueNousEnableRogueTalentScRsp"
            }
            Hcogapcpbio::CmdChessRogueReviveAvatarCsReq => {
                "CmdChessRogueReviveAvatarCsReq"
            }
            Hcogapcpbio::CmdChessRogueQueryScRsp => "CmdChessRogueQueryScRsp",
            Hcogapcpbio::CmdChessRogueQuestFinishNotify => {
                "CmdChessRogueQuestFinishNotify"
            }
            Hcogapcpbio::CmdGetChessRogueStoryInfoCsReq => {
                "CmdGetChessRogueStoryInfoCsReq"
            }
            Hcogapcpbio::CmdGetChessRogueStoryAeonTalkInfoScRsp => {
                "CmdGetChessRogueStoryAeonTalkInfoScRsp"
            }
            Hcogapcpbio::CmdSyncChessRogueNousSubStoryScNotify => {
                "CmdSyncChessRogueNousSubStoryScNotify"
            }
            Hcogapcpbio::CmdEnterChessRogueAeonRoomScRsp => {
                "CmdEnterChessRogueAeonRoomScRsp"
            }
            Hcogapcpbio::CmdChessRogueQueryBpCsReq => "CmdChessRogueQueryBpCsReq",
            Hcogapcpbio::CmdChessRogueCellUpdateNotify => "CmdChessRogueCellUpdateNotify",
            Hcogapcpbio::CmdSelectChessRogueSubStoryCsReq => {
                "CmdSelectChessRogueSubStoryCsReq"
            }
            Hcogapcpbio::CmdChessRogueSelectBpCsReq => "CmdChessRogueSelectBpCsReq",
            Hcogapcpbio::CmdSyncChessRogueNousMainStoryScNotify => {
                "CmdSyncChessRogueNousMainStoryScNotify"
            }
            Hcogapcpbio::CmdChessRogueQueryCsReq => "CmdChessRogueQueryCsReq",
            Hcogapcpbio::CmdChessRogueQuitScRsp => "CmdChessRogueQuitScRsp",
            Hcogapcpbio::CmdChessRogueSelectCellCsReq => "CmdChessRogueSelectCellCsReq",
            Hcogapcpbio::CmdFinishChessRogueSubStoryCsReq => {
                "CmdFinishChessRogueSubStoryCsReq"
            }
            Hcogapcpbio::CmdChessRogueNousEditDiceCsReq => {
                "CmdChessRogueNousEditDiceCsReq"
            }
            Hcogapcpbio::CmdGetChessRogueNousStoryInfoCsReq => {
                "CmdGetChessRogueNousStoryInfoCsReq"
            }
            Hcogapcpbio::CmdChessRogueQueryAeonDimensionsCsReq => {
                "CmdChessRogueQueryAeonDimensionsCsReq"
            }
            Hcogapcpbio::CmdChessRogueReRollDiceCsReq => "CmdChessRogueReRollDiceCsReq",
            Hcogapcpbio::CmdChessRogueNousEnableRogueTalentCsReq => {
                "CmdChessRogueNousEnableRogueTalentCsReq"
            }
            Hcogapcpbio::CmdChessRogueReRollDiceScRsp => "CmdChessRogueReRollDiceScRsp",
            Hcogapcpbio::CmdChessRogueChangeyAeonDimensionNotify => {
                "CmdChessRogueChangeyAeonDimensionNotify"
            }
            Hcogapcpbio::CmdChessRogueSelectCellScRsp => "CmdChessRogueSelectCellScRsp",
            Hcogapcpbio::CmdChessRogueStartScRsp => "CmdChessRogueStartScRsp",
            Hcogapcpbio::CmdChessRogueUpdateBoardScNotify => {
                "CmdChessRogueUpdateBoardScNotify"
            }
            Hcogapcpbio::CmdChessRogueEnterCellScRsp => "CmdChessRogueEnterCellScRsp",
            Hcogapcpbio::CmdChessRogueGoAheadScRsp => "CmdChessRogueGoAheadScRsp",
            Hcogapcpbio::CmdChessRogueConfirmRollCsReq => "CmdChessRogueConfirmRollCsReq",
            Hcogapcpbio::CmdChessRogueFinishCurRoomNotify => {
                "CmdChessRogueFinishCurRoomNotify"
            }
            Hcogapcpbio::CmdChessRogueUpdateAllowedSelectCellScNotify => {
                "CmdChessRogueUpdateAllowedSelectCellScNotify"
            }
            Hcogapcpbio::CmdChessRogueStartCsReq => "CmdChessRogueStartCsReq",
            Hcogapcpbio::CmdChessRogueUpdateDicePassiveAccumulateValueScNotify => {
                "CmdChessRogueUpdateDicePassiveAccumulateValueScNotify"
            }
            Hcogapcpbio::CmdChessRogueGiveUpCsReq => "CmdChessRogueGiveUpCsReq",
            Hcogapcpbio::CmdFinishChessRogueNousSubStoryCsReq => {
                "CmdFinishChessRogueNousSubStoryCsReq"
            }
            Hcogapcpbio::CmdChessRogueUpdateAeonModifierValueScNotify => {
                "CmdChessRogueUpdateAeonModifierValueScNotify"
            }
            Hcogapcpbio::CmdChessRogueUpdateDiceInfoScNotify => {
                "CmdChessRogueUpdateDiceInfoScNotify"
            }
            Hcogapcpbio::CmdChessRogueNousGetRogueTalentInfoScRsp => {
                "CmdChessRogueNousGetRogueTalentInfoScRsp"
            }
            Hcogapcpbio::CmdSelectChessRogueSubStoryScRsp => {
                "CmdSelectChessRogueSubStoryScRsp"
            }
            Hcogapcpbio::CmdChessRogueConfirmRollScRsp => "CmdChessRogueConfirmRollScRsp",
            Hcogapcpbio::CmdSyncChessRogueMainStoryFinishScNotify => {
                "CmdSyncChessRogueMainStoryFinishScNotify"
            }
            Hcogapcpbio::CmdChessRogueNousDiceUpdateNotify => {
                "CmdChessRogueNousDiceUpdateNotify"
            }
            Hcogapcpbio::CmdFinishChessRogueNousSubStoryScRsp => {
                "CmdFinishChessRogueNousSubStoryScRsp"
            }
            Hcogapcpbio::CmdChessRoguePickAvatarCsReq => "CmdChessRoguePickAvatarCsReq",
            Hcogapcpbio::CmdChessRogueLeaveCsReq => "CmdChessRogueLeaveCsReq",
            Hcogapcpbio::CmdChessRogueNousEditDiceScRsp => {
                "CmdChessRogueNousEditDiceScRsp"
            }
            Hcogapcpbio::CmdChessRogueEnterNextLayerCsReq => {
                "CmdChessRogueEnterNextLayerCsReq"
            }
            Hcogapcpbio::CmdChessRoguePickAvatarScRsp => "CmdChessRoguePickAvatarScRsp",
            Hcogapcpbio::CmdChessRogueUpdateActionPointScNotify => {
                "CmdChessRogueUpdateActionPointScNotify"
            }
            Hcogapcpbio::CmdChessRogueLeaveScRsp => "CmdChessRogueLeaveScRsp",
            Hcogapcpbio::CmdEnterChessRogueAeonRoomCsReq => {
                "CmdEnterChessRogueAeonRoomCsReq"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdChessRogueTypeNone" => Some(Self::CmdChessRogueTypeNone),
            "CmdChessRogueSkipTeachingLevelCsReq" => {
                Some(Self::CmdChessRogueSkipTeachingLevelCsReq)
            }
            "CmdGetChessRogueBuffEnhanceInfoScRsp" => {
                Some(Self::CmdGetChessRogueBuffEnhanceInfoScRsp)
            }
            "CmdEnhanceChessRogueBuffCsReq" => Some(Self::CmdEnhanceChessRogueBuffCsReq),
            "CmdChessRogueQueryAeonDimensionsScRsp" => {
                Some(Self::CmdChessRogueQueryAeonDimensionsScRsp)
            }
            "CmdChessRogueNousGetRogueTalentInfoCsReq" => {
                Some(Self::CmdChessRogueNousGetRogueTalentInfoCsReq)
            }
            "CmdChessRogueSkipTeachingLevelScRsp" => {
                Some(Self::CmdChessRogueSkipTeachingLevelScRsp)
            }
            "CmdChessRogueEnterCellCsReq" => Some(Self::CmdChessRogueEnterCellCsReq),
            "CmdEnhanceChessRogueBuffScRsp" => Some(Self::CmdEnhanceChessRogueBuffScRsp),
            "CmdGetChessRogueStoryInfoScRsp" => {
                Some(Self::CmdGetChessRogueStoryInfoScRsp)
            }
            "CmdChessRogueCheatRollCsReq" => Some(Self::CmdChessRogueCheatRollCsReq),
            "CmdChessRogueRollDiceScRsp" => Some(Self::CmdChessRogueRollDiceScRsp),
            "CmdChessRogueEnterCsReq" => Some(Self::CmdChessRogueEnterCsReq),
            "CmdFinishChessRogueSubStoryScRsp" => {
                Some(Self::CmdFinishChessRogueSubStoryScRsp)
            }
            "CmdChessRogueEnterNextLayerScRsp" => {
                Some(Self::CmdChessRogueEnterNextLayerScRsp)
            }
            "CmdChessRogueUpdateMoneyInfoScNotify" => {
                Some(Self::CmdChessRogueUpdateMoneyInfoScNotify)
            }
            "CmdSelectChessRogueNousSubStoryScRsp" => {
                Some(Self::CmdSelectChessRogueNousSubStoryScRsp)
            }
            "CmdGetChessRogueStoryAeonTalkInfoCsReq" => {
                Some(Self::CmdGetChessRogueStoryAeonTalkInfoCsReq)
            }
            "CmdChessRogueUpdateReviveInfoScNotify" => {
                Some(Self::CmdChessRogueUpdateReviveInfoScNotify)
            }
            "CmdChessRogueQueryBpScRsp" => Some(Self::CmdChessRogueQueryBpScRsp),
            "CmdChessRogueSelectBpScRsp" => Some(Self::CmdChessRogueSelectBpScRsp),
            "CmdChessRogueMoveCellNotify" => Some(Self::CmdChessRogueMoveCellNotify),
            "CmdChessRogueUpdateUnlockLevelScNotify" => {
                Some(Self::CmdChessRogueUpdateUnlockLevelScNotify)
            }
            "CmdChessRogueGoAheadCsReq" => Some(Self::CmdChessRogueGoAheadCsReq),
            "CmdChessRogueGiveUpScRsp" => Some(Self::CmdChessRogueGiveUpScRsp),
            "CmdChessRogueRollDiceCsReq" => Some(Self::CmdChessRogueRollDiceCsReq),
            "CmdGetChessRogueNousStoryInfoScRsp" => {
                Some(Self::CmdGetChessRogueNousStoryInfoScRsp)
            }
            "CmdChessRogueReviveAvatarScRsp" => {
                Some(Self::CmdChessRogueReviveAvatarScRsp)
            }
            "CmdChessRogueNousDiceSurfaceUnlockNotify" => {
                Some(Self::CmdChessRogueNousDiceSurfaceUnlockNotify)
            }
            "CmdChessRogueUpdateLevelBaseInfoScNotify" => {
                Some(Self::CmdChessRogueUpdateLevelBaseInfoScNotify)
            }
            "CmdGetChessRogueBuffEnhanceInfoCsReq" => {
                Some(Self::CmdGetChessRogueBuffEnhanceInfoCsReq)
            }
            "CmdChessRogueGiveUpRollScRsp" => Some(Self::CmdChessRogueGiveUpRollScRsp),
            "CmdChessRogueEnterScRsp" => Some(Self::CmdChessRogueEnterScRsp),
            "CmdChessRogueCheatRollScRsp" => Some(Self::CmdChessRogueCheatRollScRsp),
            "CmdChessRogueQuitCsReq" => Some(Self::CmdChessRogueQuitCsReq),
            "CmdChessRogueGiveUpRollCsReq" => Some(Self::CmdChessRogueGiveUpRollCsReq),
            "CmdSyncChessRogueNousValueScNotify" => {
                Some(Self::CmdSyncChessRogueNousValueScNotify)
            }
            "CmdSelectChessRogueNousSubStoryCsReq" => {
                Some(Self::CmdSelectChessRogueNousSubStoryCsReq)
            }
            "CmdChessRogueLayerAccountInfoNotify" => {
                Some(Self::CmdChessRogueLayerAccountInfoNotify)
            }
            "CmdChessRogueNousEnableRogueTalentScRsp" => {
                Some(Self::CmdChessRogueNousEnableRogueTalentScRsp)
            }
            "CmdChessRogueReviveAvatarCsReq" => {
                Some(Self::CmdChessRogueReviveAvatarCsReq)
            }
            "CmdChessRogueQueryScRsp" => Some(Self::CmdChessRogueQueryScRsp),
            "CmdChessRogueQuestFinishNotify" => {
                Some(Self::CmdChessRogueQuestFinishNotify)
            }
            "CmdGetChessRogueStoryInfoCsReq" => {
                Some(Self::CmdGetChessRogueStoryInfoCsReq)
            }
            "CmdGetChessRogueStoryAeonTalkInfoScRsp" => {
                Some(Self::CmdGetChessRogueStoryAeonTalkInfoScRsp)
            }
            "CmdSyncChessRogueNousSubStoryScNotify" => {
                Some(Self::CmdSyncChessRogueNousSubStoryScNotify)
            }
            "CmdEnterChessRogueAeonRoomScRsp" => {
                Some(Self::CmdEnterChessRogueAeonRoomScRsp)
            }
            "CmdChessRogueQueryBpCsReq" => Some(Self::CmdChessRogueQueryBpCsReq),
            "CmdChessRogueCellUpdateNotify" => Some(Self::CmdChessRogueCellUpdateNotify),
            "CmdSelectChessRogueSubStoryCsReq" => {
                Some(Self::CmdSelectChessRogueSubStoryCsReq)
            }
            "CmdChessRogueSelectBpCsReq" => Some(Self::CmdChessRogueSelectBpCsReq),
            "CmdSyncChessRogueNousMainStoryScNotify" => {
                Some(Self::CmdSyncChessRogueNousMainStoryScNotify)
            }
            "CmdChessRogueQueryCsReq" => Some(Self::CmdChessRogueQueryCsReq),
            "CmdChessRogueQuitScRsp" => Some(Self::CmdChessRogueQuitScRsp),
            "CmdChessRogueSelectCellCsReq" => Some(Self::CmdChessRogueSelectCellCsReq),
            "CmdFinishChessRogueSubStoryCsReq" => {
                Some(Self::CmdFinishChessRogueSubStoryCsReq)
            }
            "CmdChessRogueNousEditDiceCsReq" => {
                Some(Self::CmdChessRogueNousEditDiceCsReq)
            }
            "CmdGetChessRogueNousStoryInfoCsReq" => {
                Some(Self::CmdGetChessRogueNousStoryInfoCsReq)
            }
            "CmdChessRogueQueryAeonDimensionsCsReq" => {
                Some(Self::CmdChessRogueQueryAeonDimensionsCsReq)
            }
            "CmdChessRogueReRollDiceCsReq" => Some(Self::CmdChessRogueReRollDiceCsReq),
            "CmdChessRogueNousEnableRogueTalentCsReq" => {
                Some(Self::CmdChessRogueNousEnableRogueTalentCsReq)
            }
            "CmdChessRogueReRollDiceScRsp" => Some(Self::CmdChessRogueReRollDiceScRsp),
            "CmdChessRogueChangeyAeonDimensionNotify" => {
                Some(Self::CmdChessRogueChangeyAeonDimensionNotify)
            }
            "CmdChessRogueSelectCellScRsp" => Some(Self::CmdChessRogueSelectCellScRsp),
            "CmdChessRogueStartScRsp" => Some(Self::CmdChessRogueStartScRsp),
            "CmdChessRogueUpdateBoardScNotify" => {
                Some(Self::CmdChessRogueUpdateBoardScNotify)
            }
            "CmdChessRogueEnterCellScRsp" => Some(Self::CmdChessRogueEnterCellScRsp),
            "CmdChessRogueGoAheadScRsp" => Some(Self::CmdChessRogueGoAheadScRsp),
            "CmdChessRogueConfirmRollCsReq" => Some(Self::CmdChessRogueConfirmRollCsReq),
            "CmdChessRogueFinishCurRoomNotify" => {
                Some(Self::CmdChessRogueFinishCurRoomNotify)
            }
            "CmdChessRogueUpdateAllowedSelectCellScNotify" => {
                Some(Self::CmdChessRogueUpdateAllowedSelectCellScNotify)
            }
            "CmdChessRogueStartCsReq" => Some(Self::CmdChessRogueStartCsReq),
            "CmdChessRogueUpdateDicePassiveAccumulateValueScNotify" => {
                Some(Self::CmdChessRogueUpdateDicePassiveAccumulateValueScNotify)
            }
            "CmdChessRogueGiveUpCsReq" => Some(Self::CmdChessRogueGiveUpCsReq),
            "CmdFinishChessRogueNousSubStoryCsReq" => {
                Some(Self::CmdFinishChessRogueNousSubStoryCsReq)
            }
            "CmdChessRogueUpdateAeonModifierValueScNotify" => {
                Some(Self::CmdChessRogueUpdateAeonModifierValueScNotify)
            }
            "CmdChessRogueUpdateDiceInfoScNotify" => {
                Some(Self::CmdChessRogueUpdateDiceInfoScNotify)
            }
            "CmdChessRogueNousGetRogueTalentInfoScRsp" => {
                Some(Self::CmdChessRogueNousGetRogueTalentInfoScRsp)
            }
            "CmdSelectChessRogueSubStoryScRsp" => {
                Some(Self::CmdSelectChessRogueSubStoryScRsp)
            }
            "CmdChessRogueConfirmRollScRsp" => Some(Self::CmdChessRogueConfirmRollScRsp),
            "CmdSyncChessRogueMainStoryFinishScNotify" => {
                Some(Self::CmdSyncChessRogueMainStoryFinishScNotify)
            }
            "CmdChessRogueNousDiceUpdateNotify" => {
                Some(Self::CmdChessRogueNousDiceUpdateNotify)
            }
            "CmdFinishChessRogueNousSubStoryScRsp" => {
                Some(Self::CmdFinishChessRogueNousSubStoryScRsp)
            }
            "CmdChessRoguePickAvatarCsReq" => Some(Self::CmdChessRoguePickAvatarCsReq),
            "CmdChessRogueLeaveCsReq" => Some(Self::CmdChessRogueLeaveCsReq),
            "CmdChessRogueNousEditDiceScRsp" => {
                Some(Self::CmdChessRogueNousEditDiceScRsp)
            }
            "CmdChessRogueEnterNextLayerCsReq" => {
                Some(Self::CmdChessRogueEnterNextLayerCsReq)
            }
            "CmdChessRoguePickAvatarScRsp" => Some(Self::CmdChessRoguePickAvatarScRsp),
            "CmdChessRogueUpdateActionPointScNotify" => {
                Some(Self::CmdChessRogueUpdateActionPointScNotify)
            }
            "CmdChessRogueLeaveScRsp" => Some(Self::CmdChessRogueLeaveScRsp),
            "CmdEnterChessRogueAeonRoomCsReq" => {
                Some(Self::CmdEnterChessRogueAeonRoomCsReq)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Kogkmofkdkh {
    ChessRogueDiceIdle = 0,
    ChessRogueDiceRolled = 1,
    ChessRogueDiceConfirmed = 2,
    ChessRogueDiceGiveup = 3,
}
impl Kogkmofkdkh {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Kogkmofkdkh::ChessRogueDiceIdle => "CHESS_ROGUE_DICE_IDLE",
            Kogkmofkdkh::ChessRogueDiceRolled => "CHESS_ROGUE_DICE_ROLLED",
            Kogkmofkdkh::ChessRogueDiceConfirmed => "CHESS_ROGUE_DICE_CONFIRMED",
            Kogkmofkdkh::ChessRogueDiceGiveup => "CHESS_ROGUE_DICE_GIVEUP",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CHESS_ROGUE_DICE_IDLE" => Some(Self::ChessRogueDiceIdle),
            "CHESS_ROGUE_DICE_ROLLED" => Some(Self::ChessRogueDiceRolled),
            "CHESS_ROGUE_DICE_CONFIRMED" => Some(Self::ChessRogueDiceConfirmed),
            "CHESS_ROGUE_DICE_GIVEUP" => Some(Self::ChessRogueDiceGiveup),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Moogohdmihl {
    ChessRogueDiceFixed = 0,
    ChessRogueDiceEditable = 1,
}
impl Moogohdmihl {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Moogohdmihl::ChessRogueDiceFixed => "CHESS_ROGUE_DICE_FIXED",
            Moogohdmihl::ChessRogueDiceEditable => "CHESS_ROGUE_DICE_EDITABLE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CHESS_ROGUE_DICE_FIXED" => Some(Self::ChessRogueDiceFixed),
            "CHESS_ROGUE_DICE_EDITABLE" => Some(Self::ChessRogueDiceEditable),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Finaeombomp {
    Idle = 0,
    Selected = 1,
    Processing = 2,
    Finish = 3,
}
impl Finaeombomp {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Finaeombomp::Idle => "IDLE",
            Finaeombomp::Selected => "SELECTED",
            Finaeombomp::Processing => "PROCESSING",
            Finaeombomp::Finish => "FINISH",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "IDLE" => Some(Self::Idle),
            "SELECTED" => Some(Self::Selected),
            "PROCESSING" => Some(Self::Processing),
            "FINISH" => Some(Self::Finish),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Cakniagnigg {
    ChessRogueCellSpecialTypeNone = 0,
    ChessRogueCellSpecialTypeLocked = 1,
    ChessRogueCellSpecialTypeReplicate = 2,
    ChessRogueCellSpecialTypeProtected = 3,
    ChessRogueCellSpecialTypeSeed = 4,
    ChessRogueCellSpecialTypeStamp = 5,
}
impl Cakniagnigg {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Cakniagnigg::ChessRogueCellSpecialTypeNone => {
                "CHESS_ROGUE_CELL_SPECIAL_TYPE_NONE"
            }
            Cakniagnigg::ChessRogueCellSpecialTypeLocked => {
                "CHESS_ROGUE_CELL_SPECIAL_TYPE_LOCKED"
            }
            Cakniagnigg::ChessRogueCellSpecialTypeReplicate => {
                "CHESS_ROGUE_CELL_SPECIAL_TYPE_REPLICATE"
            }
            Cakniagnigg::ChessRogueCellSpecialTypeProtected => {
                "CHESS_ROGUE_CELL_SPECIAL_TYPE_PROTECTED"
            }
            Cakniagnigg::ChessRogueCellSpecialTypeSeed => {
                "CHESS_ROGUE_CELL_SPECIAL_TYPE_SEED"
            }
            Cakniagnigg::ChessRogueCellSpecialTypeStamp => {
                "CHESS_ROGUE_CELL_SPECIAL_TYPE_STAMP"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CHESS_ROGUE_CELL_SPECIAL_TYPE_NONE" => {
                Some(Self::ChessRogueCellSpecialTypeNone)
            }
            "CHESS_ROGUE_CELL_SPECIAL_TYPE_LOCKED" => {
                Some(Self::ChessRogueCellSpecialTypeLocked)
            }
            "CHESS_ROGUE_CELL_SPECIAL_TYPE_REPLICATE" => {
                Some(Self::ChessRogueCellSpecialTypeReplicate)
            }
            "CHESS_ROGUE_CELL_SPECIAL_TYPE_PROTECTED" => {
                Some(Self::ChessRogueCellSpecialTypeProtected)
            }
            "CHESS_ROGUE_CELL_SPECIAL_TYPE_SEED" => {
                Some(Self::ChessRogueCellSpecialTypeSeed)
            }
            "CHESS_ROGUE_CELL_SPECIAL_TYPE_STAMP" => {
                Some(Self::ChessRogueCellSpecialTypeStamp)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Leieahhhhmi {
    ChessRogueLevelIdle = 0,
    ChessRogueLevelProcessing = 1,
    ChessRogueLevelPending = 2,
    ChessRogueLevelFinish = 3,
    ChessRogueLevelFailed = 4,
    ChessRogueLevelForceFinish = 5,
}
impl Leieahhhhmi {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Leieahhhhmi::ChessRogueLevelIdle => "CHESS_ROGUE_LEVEL_IDLE",
            Leieahhhhmi::ChessRogueLevelProcessing => "CHESS_ROGUE_LEVEL_PROCESSING",
            Leieahhhhmi::ChessRogueLevelPending => "CHESS_ROGUE_LEVEL_PENDING",
            Leieahhhhmi::ChessRogueLevelFinish => "CHESS_ROGUE_LEVEL_FINISH",
            Leieahhhhmi::ChessRogueLevelFailed => "CHESS_ROGUE_LEVEL_FAILED",
            Leieahhhhmi::ChessRogueLevelForceFinish => "CHESS_ROGUE_LEVEL_FORCE_FINISH",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CHESS_ROGUE_LEVEL_IDLE" => Some(Self::ChessRogueLevelIdle),
            "CHESS_ROGUE_LEVEL_PROCESSING" => Some(Self::ChessRogueLevelProcessing),
            "CHESS_ROGUE_LEVEL_PENDING" => Some(Self::ChessRogueLevelPending),
            "CHESS_ROGUE_LEVEL_FINISH" => Some(Self::ChessRogueLevelFinish),
            "CHESS_ROGUE_LEVEL_FAILED" => Some(Self::ChessRogueLevelFailed),
            "CHESS_ROGUE_LEVEL_FORCE_FINISH" => Some(Self::ChessRogueLevelForceFinish),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Bkohkpbgpjh {
    ChessRogueAccountByNone = 0,
    ChessRogueAccountByNormalFinish = 1,
    ChessRogueAccountByNormalQuit = 2,
    ChessRogueAccountByDialog = 3,
    ChessRogueAccountByFailed = 4,
    ChessRogueAccountByCustomOp = 5,
}
impl Bkohkpbgpjh {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Bkohkpbgpjh::ChessRogueAccountByNone => "CHESS_ROGUE_ACCOUNT_BY_NONE",
            Bkohkpbgpjh::ChessRogueAccountByNormalFinish => {
                "CHESS_ROGUE_ACCOUNT_BY_NORMAL_FINISH"
            }
            Bkohkpbgpjh::ChessRogueAccountByNormalQuit => {
                "CHESS_ROGUE_ACCOUNT_BY_NORMAL_QUIT"
            }
            Bkohkpbgpjh::ChessRogueAccountByDialog => "CHESS_ROGUE_ACCOUNT_BY_DIALOG",
            Bkohkpbgpjh::ChessRogueAccountByFailed => "CHESS_ROGUE_ACCOUNT_BY_FAILED",
            Bkohkpbgpjh::ChessRogueAccountByCustomOp => {
                "CHESS_ROGUE_ACCOUNT_BY_CUSTOM_OP"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CHESS_ROGUE_ACCOUNT_BY_NONE" => Some(Self::ChessRogueAccountByNone),
            "CHESS_ROGUE_ACCOUNT_BY_NORMAL_FINISH" => {
                Some(Self::ChessRogueAccountByNormalFinish)
            }
            "CHESS_ROGUE_ACCOUNT_BY_NORMAL_QUIT" => {
                Some(Self::ChessRogueAccountByNormalQuit)
            }
            "CHESS_ROGUE_ACCOUNT_BY_DIALOG" => Some(Self::ChessRogueAccountByDialog),
            "CHESS_ROGUE_ACCOUNT_BY_FAILED" => Some(Self::ChessRogueAccountByFailed),
            "CHESS_ROGUE_ACCOUNT_BY_CUSTOM_OP" => Some(Self::ChessRogueAccountByCustomOp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Anlgcpekohp {
    ChessRogueBuffSourceTypeNone = 0,
    ChessRogueBuffSourceTypeSelect = 1,
    ChessRogueBuffSourceTypeEnhance = 2,
    ChessRogueBuffSourceTypeMiracle = 3,
    ChessRogueBuffSourceTypeDialogue = 4,
    ChessRogueBuffSourceTypeBonus = 5,
    ChessRogueBuffSourceTypeShop = 6,
    ChessRogueBuffSourceTypeDice = 7,
    ChessRogueBuffSourceTypeAeon = 8,
    ChessRogueBuffSourceTypeMazeSkill = 9,
    ChessRogueBuffSourceTypeLevelMechanism = 10,
}
impl Anlgcpekohp {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Anlgcpekohp::ChessRogueBuffSourceTypeNone => {
                "CHESS_ROGUE_BUFF_SOURCE_TYPE_NONE"
            }
            Anlgcpekohp::ChessRogueBuffSourceTypeSelect => {
                "CHESS_ROGUE_BUFF_SOURCE_TYPE_SELECT"
            }
            Anlgcpekohp::ChessRogueBuffSourceTypeEnhance => {
                "CHESS_ROGUE_BUFF_SOURCE_TYPE_ENHANCE"
            }
            Anlgcpekohp::ChessRogueBuffSourceTypeMiracle => {
                "CHESS_ROGUE_BUFF_SOURCE_TYPE_MIRACLE"
            }
            Anlgcpekohp::ChessRogueBuffSourceTypeDialogue => {
                "CHESS_ROGUE_BUFF_SOURCE_TYPE_DIALOGUE"
            }
            Anlgcpekohp::ChessRogueBuffSourceTypeBonus => {
                "CHESS_ROGUE_BUFF_SOURCE_TYPE_BONUS"
            }
            Anlgcpekohp::ChessRogueBuffSourceTypeShop => {
                "CHESS_ROGUE_BUFF_SOURCE_TYPE_SHOP"
            }
            Anlgcpekohp::ChessRogueBuffSourceTypeDice => {
                "CHESS_ROGUE_BUFF_SOURCE_TYPE_DICE"
            }
            Anlgcpekohp::ChessRogueBuffSourceTypeAeon => {
                "CHESS_ROGUE_BUFF_SOURCE_TYPE_AEON"
            }
            Anlgcpekohp::ChessRogueBuffSourceTypeMazeSkill => {
                "CHESS_ROGUE_BUFF_SOURCE_TYPE_MAZE_SKILL"
            }
            Anlgcpekohp::ChessRogueBuffSourceTypeLevelMechanism => {
                "CHESS_ROGUE_BUFF_SOURCE_TYPE_LEVEL_MECHANISM"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CHESS_ROGUE_BUFF_SOURCE_TYPE_NONE" => {
                Some(Self::ChessRogueBuffSourceTypeNone)
            }
            "CHESS_ROGUE_BUFF_SOURCE_TYPE_SELECT" => {
                Some(Self::ChessRogueBuffSourceTypeSelect)
            }
            "CHESS_ROGUE_BUFF_SOURCE_TYPE_ENHANCE" => {
                Some(Self::ChessRogueBuffSourceTypeEnhance)
            }
            "CHESS_ROGUE_BUFF_SOURCE_TYPE_MIRACLE" => {
                Some(Self::ChessRogueBuffSourceTypeMiracle)
            }
            "CHESS_ROGUE_BUFF_SOURCE_TYPE_DIALOGUE" => {
                Some(Self::ChessRogueBuffSourceTypeDialogue)
            }
            "CHESS_ROGUE_BUFF_SOURCE_TYPE_BONUS" => {
                Some(Self::ChessRogueBuffSourceTypeBonus)
            }
            "CHESS_ROGUE_BUFF_SOURCE_TYPE_SHOP" => {
                Some(Self::ChessRogueBuffSourceTypeShop)
            }
            "CHESS_ROGUE_BUFF_SOURCE_TYPE_DICE" => {
                Some(Self::ChessRogueBuffSourceTypeDice)
            }
            "CHESS_ROGUE_BUFF_SOURCE_TYPE_AEON" => {
                Some(Self::ChessRogueBuffSourceTypeAeon)
            }
            "CHESS_ROGUE_BUFF_SOURCE_TYPE_MAZE_SKILL" => {
                Some(Self::ChessRogueBuffSourceTypeMazeSkill)
            }
            "CHESS_ROGUE_BUFF_SOURCE_TYPE_LEVEL_MECHANISM" => {
                Some(Self::ChessRogueBuffSourceTypeLevelMechanism)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Nbbckjdffba {
    ChessRogueMiracleSourceTypeNone = 0,
    ChessRogueMiracleSourceTypeSelect = 1,
    ChessRogueMiracleSourceTypeDialogue = 2,
    ChessRogueMiracleSourceTypeBonus = 3,
    ChessRogueMiracleSourceTypeUse = 4,
    ChessRogueMiracleSourceTypeReset = 5,
    ChessRogueMiracleSourceTypeReplace = 6,
    ChessRogueMiracleSourceTypeTrade = 7,
    ChessRogueMiracleSourceTypeGet = 8,
    ChessRogueMiracleSourceTypeShop = 9,
    ChessRogueMiracleSourceTypeMazeSkill = 10,
    ChessRogueMiracleSourceTypeLevelMechanism = 11,
}
impl Nbbckjdffba {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Nbbckjdffba::ChessRogueMiracleSourceTypeNone => {
                "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_NONE"
            }
            Nbbckjdffba::ChessRogueMiracleSourceTypeSelect => {
                "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_SELECT"
            }
            Nbbckjdffba::ChessRogueMiracleSourceTypeDialogue => {
                "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_DIALOGUE"
            }
            Nbbckjdffba::ChessRogueMiracleSourceTypeBonus => {
                "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_BONUS"
            }
            Nbbckjdffba::ChessRogueMiracleSourceTypeUse => {
                "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_USE"
            }
            Nbbckjdffba::ChessRogueMiracleSourceTypeReset => {
                "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_RESET"
            }
            Nbbckjdffba::ChessRogueMiracleSourceTypeReplace => {
                "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_REPLACE"
            }
            Nbbckjdffba::ChessRogueMiracleSourceTypeTrade => {
                "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_TRADE"
            }
            Nbbckjdffba::ChessRogueMiracleSourceTypeGet => {
                "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_GET"
            }
            Nbbckjdffba::ChessRogueMiracleSourceTypeShop => {
                "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_SHOP"
            }
            Nbbckjdffba::ChessRogueMiracleSourceTypeMazeSkill => {
                "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_MAZE_SKILL"
            }
            Nbbckjdffba::ChessRogueMiracleSourceTypeLevelMechanism => {
                "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_LEVEL_MECHANISM"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_NONE" => {
                Some(Self::ChessRogueMiracleSourceTypeNone)
            }
            "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_SELECT" => {
                Some(Self::ChessRogueMiracleSourceTypeSelect)
            }
            "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_DIALOGUE" => {
                Some(Self::ChessRogueMiracleSourceTypeDialogue)
            }
            "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_BONUS" => {
                Some(Self::ChessRogueMiracleSourceTypeBonus)
            }
            "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_USE" => {
                Some(Self::ChessRogueMiracleSourceTypeUse)
            }
            "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_RESET" => {
                Some(Self::ChessRogueMiracleSourceTypeReset)
            }
            "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_REPLACE" => {
                Some(Self::ChessRogueMiracleSourceTypeReplace)
            }
            "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_TRADE" => {
                Some(Self::ChessRogueMiracleSourceTypeTrade)
            }
            "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_GET" => {
                Some(Self::ChessRogueMiracleSourceTypeGet)
            }
            "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_SHOP" => {
                Some(Self::ChessRogueMiracleSourceTypeShop)
            }
            "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_MAZE_SKILL" => {
                Some(Self::ChessRogueMiracleSourceTypeMazeSkill)
            }
            "CHESS_ROGUE_MIRACLE_SOURCE_TYPE_LEVEL_MECHANISM" => {
                Some(Self::ChessRogueMiracleSourceTypeLevelMechanism)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Pdgndfeojif {
    ChessRogueUpdateLevelStatusByNone = 0,
    ChessRogueUpdateLevelStatusByDialog = 1,
}
impl Pdgndfeojif {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Pdgndfeojif::ChessRogueUpdateLevelStatusByNone => {
                "CHESS_ROGUE_UPDATE_LEVEL_STATUS_BY_NONE"
            }
            Pdgndfeojif::ChessRogueUpdateLevelStatusByDialog => {
                "CHESS_ROGUE_UPDATE_LEVEL_STATUS_BY_DIALOG"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CHESS_ROGUE_UPDATE_LEVEL_STATUS_BY_NONE" => {
                Some(Self::ChessRogueUpdateLevelStatusByNone)
            }
            "CHESS_ROGUE_UPDATE_LEVEL_STATUS_BY_DIALOG" => {
                Some(Self::ChessRogueUpdateLevelStatusByDialog)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Jgjcjhmakka {
    ChessRogueCellUpdateReasonNone = 0,
    ChessRogueCellUpdateReasonModifier = 1,
}
impl Jgjcjhmakka {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Jgjcjhmakka::ChessRogueCellUpdateReasonNone => {
                "CHESS_ROGUE_CELL_UPDATE_REASON_NONE"
            }
            Jgjcjhmakka::ChessRogueCellUpdateReasonModifier => {
                "CHESS_ROGUE_CELL_UPDATE_REASON_MODIFIER"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CHESS_ROGUE_CELL_UPDATE_REASON_NONE" => {
                Some(Self::ChessRogueCellUpdateReasonNone)
            }
            "CHESS_ROGUE_CELL_UPDATE_REASON_MODIFIER" => {
                Some(Self::ChessRogueCellUpdateReasonModifier)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Gdhjelibnfp {
    ChessRogueAeonTypeNone = 0,
    ChessRogueAeonTypeKnight = 1,
    ChessRogueAeonTypeMemory = 2,
    ChessRogueAeonTypeWarlock = 3,
    ChessRogueAeonTypePriest = 4,
    ChessRogueAeonTypeRogue = 5,
    ChessRogueAeonTypeWarrior = 6,
    ChessRogueAeonTypeHappy = 7,
    ChessRogueAeonTypeBreed = 8,
}
impl Gdhjelibnfp {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Gdhjelibnfp::ChessRogueAeonTypeNone => "CHESS_ROGUE_AEON_TYPE_NONE",
            Gdhjelibnfp::ChessRogueAeonTypeKnight => "CHESS_ROGUE_AEON_TYPE_KNIGHT",
            Gdhjelibnfp::ChessRogueAeonTypeMemory => "CHESS_ROGUE_AEON_TYPE_MEMORY",
            Gdhjelibnfp::ChessRogueAeonTypeWarlock => "CHESS_ROGUE_AEON_TYPE_WARLOCK",
            Gdhjelibnfp::ChessRogueAeonTypePriest => "CHESS_ROGUE_AEON_TYPE_PRIEST",
            Gdhjelibnfp::ChessRogueAeonTypeRogue => "CHESS_ROGUE_AEON_TYPE_ROGUE",
            Gdhjelibnfp::ChessRogueAeonTypeWarrior => "CHESS_ROGUE_AEON_TYPE_WARRIOR",
            Gdhjelibnfp::ChessRogueAeonTypeHappy => "CHESS_ROGUE_AEON_TYPE_HAPPY",
            Gdhjelibnfp::ChessRogueAeonTypeBreed => "CHESS_ROGUE_AEON_TYPE_BREED",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CHESS_ROGUE_AEON_TYPE_NONE" => Some(Self::ChessRogueAeonTypeNone),
            "CHESS_ROGUE_AEON_TYPE_KNIGHT" => Some(Self::ChessRogueAeonTypeKnight),
            "CHESS_ROGUE_AEON_TYPE_MEMORY" => Some(Self::ChessRogueAeonTypeMemory),
            "CHESS_ROGUE_AEON_TYPE_WARLOCK" => Some(Self::ChessRogueAeonTypeWarlock),
            "CHESS_ROGUE_AEON_TYPE_PRIEST" => Some(Self::ChessRogueAeonTypePriest),
            "CHESS_ROGUE_AEON_TYPE_ROGUE" => Some(Self::ChessRogueAeonTypeRogue),
            "CHESS_ROGUE_AEON_TYPE_WARRIOR" => Some(Self::ChessRogueAeonTypeWarrior),
            "CHESS_ROGUE_AEON_TYPE_HAPPY" => Some(Self::ChessRogueAeonTypeHappy),
            "CHESS_ROGUE_AEON_TYPE_BREED" => Some(Self::ChessRogueAeonTypeBreed),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Ngmdjbaanig {
    ChessRogueDiceSourceTypeNone = 0,
    ChessRogueDiceSourceTypeNormal = 1,
    ChessRogueDiceSourceTypeRepeat = 2,
    ChessRogueDiceSourceTypeCheat = 3,
}
impl Ngmdjbaanig {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Ngmdjbaanig::ChessRogueDiceSourceTypeNone => {
                "CHESS_ROGUE_DICE_SOURCE_TYPE_NONE"
            }
            Ngmdjbaanig::ChessRogueDiceSourceTypeNormal => {
                "CHESS_ROGUE_DICE_SOURCE_TYPE_NORMAL"
            }
            Ngmdjbaanig::ChessRogueDiceSourceTypeRepeat => {
                "CHESS_ROGUE_DICE_SOURCE_TYPE_REPEAT"
            }
            Ngmdjbaanig::ChessRogueDiceSourceTypeCheat => {
                "CHESS_ROGUE_DICE_SOURCE_TYPE_CHEAT"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CHESS_ROGUE_DICE_SOURCE_TYPE_NONE" => {
                Some(Self::ChessRogueDiceSourceTypeNone)
            }
            "CHESS_ROGUE_DICE_SOURCE_TYPE_NORMAL" => {
                Some(Self::ChessRogueDiceSourceTypeNormal)
            }
            "CHESS_ROGUE_DICE_SOURCE_TYPE_REPEAT" => {
                Some(Self::ChessRogueDiceSourceTypeRepeat)
            }
            "CHESS_ROGUE_DICE_SOURCE_TYPE_CHEAT" => {
                Some(Self::ChessRogueDiceSourceTypeCheat)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Dojieelhjlp {
    ChessRogueNousMainStoryStatusNone = 0,
    ChessRogueNousMainStoryStatusUnlock = 1,
    ChessRogueNousMainStoryStatusFinish = 2,
    ChessRogueNousMainStoryStatusCanTrigger = 3,
}
impl Dojieelhjlp {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Dojieelhjlp::ChessRogueNousMainStoryStatusNone => {
                "CHESS_ROGUE_NOUS_MAIN_STORY_STATUS_NONE"
            }
            Dojieelhjlp::ChessRogueNousMainStoryStatusUnlock => {
                "CHESS_ROGUE_NOUS_MAIN_STORY_STATUS_UNLOCK"
            }
            Dojieelhjlp::ChessRogueNousMainStoryStatusFinish => {
                "CHESS_ROGUE_NOUS_MAIN_STORY_STATUS_FINISH"
            }
            Dojieelhjlp::ChessRogueNousMainStoryStatusCanTrigger => {
                "CHESS_ROGUE_NOUS_MAIN_STORY_STATUS_CAN_TRIGGER"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CHESS_ROGUE_NOUS_MAIN_STORY_STATUS_NONE" => {
                Some(Self::ChessRogueNousMainStoryStatusNone)
            }
            "CHESS_ROGUE_NOUS_MAIN_STORY_STATUS_UNLOCK" => {
                Some(Self::ChessRogueNousMainStoryStatusUnlock)
            }
            "CHESS_ROGUE_NOUS_MAIN_STORY_STATUS_FINISH" => {
                Some(Self::ChessRogueNousMainStoryStatusFinish)
            }
            "CHESS_ROGUE_NOUS_MAIN_STORY_STATUS_CAN_TRIGGER" => {
                Some(Self::ChessRogueNousMainStoryStatusCanTrigger)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Eafeigpfigi {
    None = 0,
    PhaseOne = 1,
    PhaseTwo = 2,
}
impl Eafeigpfigi {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Eafeigpfigi::None => "NONE",
            Eafeigpfigi::PhaseOne => "PHASE_ONE",
            Eafeigpfigi::PhaseTwo => "PHASE_TWO",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "NONE" => Some(Self::None),
            "PHASE_ONE" => Some(Self::PhaseOne),
            "PHASE_TWO" => Some(Self::PhaseTwo),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Belkbhdlgkg {
    CmdClockParkTypeNone = 0,
    CmdClockParkUseBuffCsReq = 7237,
    CmdClockParkGetInfoCsReq = 7234,
    CmdClockParkQuitScriptScRsp = 7206,
    CmdClockParkSyncVirtualItemScNotify = 7230,
    CmdClockParkHandleWaitOperationCsReq = 7245,
    CmdClockParkStartScriptScRsp = 7243,
    CmdClockParkGetOngoingScriptInfoCsReq = 7286,
    CmdClockParkBattleEndScNotify = 7295,
    CmdClockParkUnlockTalentScRsp = 7209,
    CmdClockParkGetOngoingScriptInfoScRsp = 7229,
    CmdClockParkUnlockScriptScRsp = 7288,
    CmdClockParkQuitScriptCsReq = 7296,
    CmdClockParkHandleWaitOperationScRsp = 7268,
    CmdClockParkUnlockTalentCsReq = 7202,
    CmdClockParkGetInfoScRsp = 7248,
    CmdClockParkUnlockScriptCsReq = 7262,
    CmdClockParkStartScriptCsReq = 7219,
    CmdClockParkUseBuffScRsp = 7239,
    CmdClockParkFinishScriptScNotify = 7216,
}
impl Belkbhdlgkg {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Belkbhdlgkg::CmdClockParkTypeNone => "CmdClockParkTypeNone",
            Belkbhdlgkg::CmdClockParkUseBuffCsReq => "CmdClockParkUseBuffCsReq",
            Belkbhdlgkg::CmdClockParkGetInfoCsReq => "CmdClockParkGetInfoCsReq",
            Belkbhdlgkg::CmdClockParkQuitScriptScRsp => "CmdClockParkQuitScriptScRsp",
            Belkbhdlgkg::CmdClockParkSyncVirtualItemScNotify => {
                "CmdClockParkSyncVirtualItemScNotify"
            }
            Belkbhdlgkg::CmdClockParkHandleWaitOperationCsReq => {
                "CmdClockParkHandleWaitOperationCsReq"
            }
            Belkbhdlgkg::CmdClockParkStartScriptScRsp => "CmdClockParkStartScriptScRsp",
            Belkbhdlgkg::CmdClockParkGetOngoingScriptInfoCsReq => {
                "CmdClockParkGetOngoingScriptInfoCsReq"
            }
            Belkbhdlgkg::CmdClockParkBattleEndScNotify => "CmdClockParkBattleEndScNotify",
            Belkbhdlgkg::CmdClockParkUnlockTalentScRsp => "CmdClockParkUnlockTalentScRsp",
            Belkbhdlgkg::CmdClockParkGetOngoingScriptInfoScRsp => {
                "CmdClockParkGetOngoingScriptInfoScRsp"
            }
            Belkbhdlgkg::CmdClockParkUnlockScriptScRsp => "CmdClockParkUnlockScriptScRsp",
            Belkbhdlgkg::CmdClockParkQuitScriptCsReq => "CmdClockParkQuitScriptCsReq",
            Belkbhdlgkg::CmdClockParkHandleWaitOperationScRsp => {
                "CmdClockParkHandleWaitOperationScRsp"
            }
            Belkbhdlgkg::CmdClockParkUnlockTalentCsReq => "CmdClockParkUnlockTalentCsReq",
            Belkbhdlgkg::CmdClockParkGetInfoScRsp => "CmdClockParkGetInfoScRsp",
            Belkbhdlgkg::CmdClockParkUnlockScriptCsReq => "CmdClockParkUnlockScriptCsReq",
            Belkbhdlgkg::CmdClockParkStartScriptCsReq => "CmdClockParkStartScriptCsReq",
            Belkbhdlgkg::CmdClockParkUseBuffScRsp => "CmdClockParkUseBuffScRsp",
            Belkbhdlgkg::CmdClockParkFinishScriptScNotify => {
                "CmdClockParkFinishScriptScNotify"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdClockParkTypeNone" => Some(Self::CmdClockParkTypeNone),
            "CmdClockParkUseBuffCsReq" => Some(Self::CmdClockParkUseBuffCsReq),
            "CmdClockParkGetInfoCsReq" => Some(Self::CmdClockParkGetInfoCsReq),
            "CmdClockParkQuitScriptScRsp" => Some(Self::CmdClockParkQuitScriptScRsp),
            "CmdClockParkSyncVirtualItemScNotify" => {
                Some(Self::CmdClockParkSyncVirtualItemScNotify)
            }
            "CmdClockParkHandleWaitOperationCsReq" => {
                Some(Self::CmdClockParkHandleWaitOperationCsReq)
            }
            "CmdClockParkStartScriptScRsp" => Some(Self::CmdClockParkStartScriptScRsp),
            "CmdClockParkGetOngoingScriptInfoCsReq" => {
                Some(Self::CmdClockParkGetOngoingScriptInfoCsReq)
            }
            "CmdClockParkBattleEndScNotify" => Some(Self::CmdClockParkBattleEndScNotify),
            "CmdClockParkUnlockTalentScRsp" => Some(Self::CmdClockParkUnlockTalentScRsp),
            "CmdClockParkGetOngoingScriptInfoScRsp" => {
                Some(Self::CmdClockParkGetOngoingScriptInfoScRsp)
            }
            "CmdClockParkUnlockScriptScRsp" => Some(Self::CmdClockParkUnlockScriptScRsp),
            "CmdClockParkQuitScriptCsReq" => Some(Self::CmdClockParkQuitScriptCsReq),
            "CmdClockParkHandleWaitOperationScRsp" => {
                Some(Self::CmdClockParkHandleWaitOperationScRsp)
            }
            "CmdClockParkUnlockTalentCsReq" => Some(Self::CmdClockParkUnlockTalentCsReq),
            "CmdClockParkGetInfoScRsp" => Some(Self::CmdClockParkGetInfoScRsp),
            "CmdClockParkUnlockScriptCsReq" => Some(Self::CmdClockParkUnlockScriptCsReq),
            "CmdClockParkStartScriptCsReq" => Some(Self::CmdClockParkStartScriptCsReq),
            "CmdClockParkUseBuffScRsp" => Some(Self::CmdClockParkUseBuffScRsp),
            "CmdClockParkFinishScriptScNotify" => {
                Some(Self::CmdClockParkFinishScriptScNotify)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mlenmiffjlo {
    ClockParkPlayNone = 0,
    ClockParkPlayNormalDeath = 1,
    ClockParkPlayNormalPass = 2,
    ClockParkPlayFinishScript = 5,
}
impl Mlenmiffjlo {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mlenmiffjlo::ClockParkPlayNone => "CLOCK_PARK_PLAY_NONE",
            Mlenmiffjlo::ClockParkPlayNormalDeath => "CLOCK_PARK_PLAY_NORMAL_DEATH",
            Mlenmiffjlo::ClockParkPlayNormalPass => "CLOCK_PARK_PLAY_NORMAL_PASS",
            Mlenmiffjlo::ClockParkPlayFinishScript => "CLOCK_PARK_PLAY_FINISH_SCRIPT",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CLOCK_PARK_PLAY_NONE" => Some(Self::ClockParkPlayNone),
            "CLOCK_PARK_PLAY_NORMAL_DEATH" => Some(Self::ClockParkPlayNormalDeath),
            "CLOCK_PARK_PLAY_NORMAL_PASS" => Some(Self::ClockParkPlayNormalPass),
            "CLOCK_PARK_PLAY_FINISH_SCRIPT" => Some(Self::ClockParkPlayFinishScript),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum MissionStatus {
    MissionNone = 0,
    MissionDoing = 1,
    MissionFinish = 2,
    MissionPrepared = 3,
}
impl MissionStatus {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            MissionStatus::MissionNone => "MISSION_NONE",
            MissionStatus::MissionDoing => "MISSION_DOING",
            MissionStatus::MissionFinish => "MISSION_FINISH",
            MissionStatus::MissionPrepared => "MISSION_PREPARED",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "MISSION_NONE" => Some(Self::MissionNone),
            "MISSION_DOING" => Some(Self::MissionDoing),
            "MISSION_FINISH" => Some(Self::MissionFinish),
            "MISSION_PREPARED" => Some(Self::MissionPrepared),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum MessageSectionStatus {
    MessageSectionNone = 0,
    MessageSectionDoing = 1,
    MessageSectionFinish = 2,
    MessageSectionFrozen = 3,
}
impl MessageSectionStatus {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            MessageSectionStatus::MessageSectionNone => "MESSAGE_SECTION_NONE",
            MessageSectionStatus::MessageSectionDoing => "MESSAGE_SECTION_DOING",
            MessageSectionStatus::MessageSectionFinish => "MESSAGE_SECTION_FINISH",
            MessageSectionStatus::MessageSectionFrozen => "MESSAGE_SECTION_FROZEN",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "MESSAGE_SECTION_NONE" => Some(Self::MessageSectionNone),
            "MESSAGE_SECTION_DOING" => Some(Self::MessageSectionDoing),
            "MESSAGE_SECTION_FINISH" => Some(Self::MessageSectionFinish),
            "MESSAGE_SECTION_FROZEN" => Some(Self::MessageSectionFrozen),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum MessageGroupStatus {
    MessageGroupNone = 0,
    MessageGroupDoing = 1,
    MessageGroupFinish = 2,
    MessageGroupFrozen = 3,
}
impl MessageGroupStatus {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            MessageGroupStatus::MessageGroupNone => "MESSAGE_GROUP_NONE",
            MessageGroupStatus::MessageGroupDoing => "MESSAGE_GROUP_DOING",
            MessageGroupStatus::MessageGroupFinish => "MESSAGE_GROUP_FINISH",
            MessageGroupStatus::MessageGroupFrozen => "MESSAGE_GROUP_FROZEN",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "MESSAGE_GROUP_NONE" => Some(Self::MessageGroupNone),
            "MESSAGE_GROUP_DOING" => Some(Self::MessageGroupDoing),
            "MESSAGE_GROUP_FINISH" => Some(Self::MessageGroupFinish),
            "MESSAGE_GROUP_FROZEN" => Some(Self::MessageGroupFrozen),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Ijicnomkdkc {
    BattleRecordNone = 0,
    BattleRecordChallenge = 1,
    BattleRecordRogue = 2,
}
impl Ijicnomkdkc {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Ijicnomkdkc::BattleRecordNone => "BATTLE_RECORD_NONE",
            Ijicnomkdkc::BattleRecordChallenge => "BATTLE_RECORD_CHALLENGE",
            Ijicnomkdkc::BattleRecordRogue => "BATTLE_RECORD_ROGUE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "BATTLE_RECORD_NONE" => Some(Self::BattleRecordNone),
            "BATTLE_RECORD_CHALLENGE" => Some(Self::BattleRecordChallenge),
            "BATTLE_RECORD_ROGUE" => Some(Self::BattleRecordRogue),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Cpbdjpocnai {
    CmdDailyActiveTypeNone = 0,
    CmdGetDailyActiveInfoScRsp = 3388,
    CmdTakeAllApRewardCsReq = 3309,
    CmdDailyActiveInfoNotify = 3302,
    CmdTakeAllApRewardScRsp = 3319,
    CmdTakeApRewardCsReq = 3334,
    CmdGetDailyActiveInfoCsReq = 3362,
    CmdTakeApRewardScRsp = 3348,
}
impl Cpbdjpocnai {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Cpbdjpocnai::CmdDailyActiveTypeNone => "CmdDailyActiveTypeNone",
            Cpbdjpocnai::CmdGetDailyActiveInfoScRsp => "CmdGetDailyActiveInfoScRsp",
            Cpbdjpocnai::CmdTakeAllApRewardCsReq => "CmdTakeAllApRewardCsReq",
            Cpbdjpocnai::CmdDailyActiveInfoNotify => "CmdDailyActiveInfoNotify",
            Cpbdjpocnai::CmdTakeAllApRewardScRsp => "CmdTakeAllApRewardScRsp",
            Cpbdjpocnai::CmdTakeApRewardCsReq => "CmdTakeApRewardCsReq",
            Cpbdjpocnai::CmdGetDailyActiveInfoCsReq => "CmdGetDailyActiveInfoCsReq",
            Cpbdjpocnai::CmdTakeApRewardScRsp => "CmdTakeApRewardScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdDailyActiveTypeNone" => Some(Self::CmdDailyActiveTypeNone),
            "CmdGetDailyActiveInfoScRsp" => Some(Self::CmdGetDailyActiveInfoScRsp),
            "CmdTakeAllApRewardCsReq" => Some(Self::CmdTakeAllApRewardCsReq),
            "CmdDailyActiveInfoNotify" => Some(Self::CmdDailyActiveInfoNotify),
            "CmdTakeAllApRewardScRsp" => Some(Self::CmdTakeAllApRewardScRsp),
            "CmdTakeApRewardCsReq" => Some(Self::CmdTakeApRewardCsReq),
            "CmdGetDailyActiveInfoCsReq" => Some(Self::CmdGetDailyActiveInfoCsReq),
            "CmdTakeApRewardScRsp" => Some(Self::CmdTakeApRewardScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Ikhbiibiohd {
    CmdDrinkMakerTypeNone = 0,
    CmdEndDrinkMakerSequenceCsReq = 7000,
    CmdDrinkMakerUpdateTipsNotify = 6983,
    CmdGetDrinkMakerDataCsReq = 6981,
    CmdMakeMissionDrinkCsReq = 6982,
    CmdEndDrinkMakerSequenceScRsp = 6999,
    CmdDrinkMakerDayEndScNotify = 6984,
    CmdMakeDrinkCsReq = 6993,
    CmdMakeDrinkScRsp = 6997,
    CmdDrinkMakerChallengeScRsp = 6990,
    CmdMakeMissionDrinkScRsp = 6996,
    CmdGetDrinkMakerDataScRsp = 6998,
    CmdDrinkMakerChallengeCsReq = 6985,
}
impl Ikhbiibiohd {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Ikhbiibiohd::CmdDrinkMakerTypeNone => "CmdDrinkMakerTypeNone",
            Ikhbiibiohd::CmdEndDrinkMakerSequenceCsReq => "CmdEndDrinkMakerSequenceCsReq",
            Ikhbiibiohd::CmdDrinkMakerUpdateTipsNotify => "CmdDrinkMakerUpdateTipsNotify",
            Ikhbiibiohd::CmdGetDrinkMakerDataCsReq => "CmdGetDrinkMakerDataCsReq",
            Ikhbiibiohd::CmdMakeMissionDrinkCsReq => "CmdMakeMissionDrinkCsReq",
            Ikhbiibiohd::CmdEndDrinkMakerSequenceScRsp => "CmdEndDrinkMakerSequenceScRsp",
            Ikhbiibiohd::CmdDrinkMakerDayEndScNotify => "CmdDrinkMakerDayEndScNotify",
            Ikhbiibiohd::CmdMakeDrinkCsReq => "CmdMakeDrinkCsReq",
            Ikhbiibiohd::CmdMakeDrinkScRsp => "CmdMakeDrinkScRsp",
            Ikhbiibiohd::CmdDrinkMakerChallengeScRsp => "CmdDrinkMakerChallengeScRsp",
            Ikhbiibiohd::CmdMakeMissionDrinkScRsp => "CmdMakeMissionDrinkScRsp",
            Ikhbiibiohd::CmdGetDrinkMakerDataScRsp => "CmdGetDrinkMakerDataScRsp",
            Ikhbiibiohd::CmdDrinkMakerChallengeCsReq => "CmdDrinkMakerChallengeCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdDrinkMakerTypeNone" => Some(Self::CmdDrinkMakerTypeNone),
            "CmdEndDrinkMakerSequenceCsReq" => Some(Self::CmdEndDrinkMakerSequenceCsReq),
            "CmdDrinkMakerUpdateTipsNotify" => Some(Self::CmdDrinkMakerUpdateTipsNotify),
            "CmdGetDrinkMakerDataCsReq" => Some(Self::CmdGetDrinkMakerDataCsReq),
            "CmdMakeMissionDrinkCsReq" => Some(Self::CmdMakeMissionDrinkCsReq),
            "CmdEndDrinkMakerSequenceScRsp" => Some(Self::CmdEndDrinkMakerSequenceScRsp),
            "CmdDrinkMakerDayEndScNotify" => Some(Self::CmdDrinkMakerDayEndScNotify),
            "CmdMakeDrinkCsReq" => Some(Self::CmdMakeDrinkCsReq),
            "CmdMakeDrinkScRsp" => Some(Self::CmdMakeDrinkScRsp),
            "CmdDrinkMakerChallengeScRsp" => Some(Self::CmdDrinkMakerChallengeScRsp),
            "CmdMakeMissionDrinkScRsp" => Some(Self::CmdMakeMissionDrinkScRsp),
            "CmdGetDrinkMakerDataScRsp" => Some(Self::CmdGetDrinkMakerDataScRsp),
            "CmdDrinkMakerChallengeCsReq" => Some(Self::CmdDrinkMakerChallengeCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Dfbipgimhej {
    CmdEvolveBuildNone = 0,
    CmdEvolveBuildShopAbilityResetScRsp = 7120,
    CmdEvolveBuildFinishScNotify = 7107,
    CmdEvolveBuildShopAbilityUpCsReq = 7133,
    CmdEvolveBuildQueryInfoCsReq = 7108,
    CmdEvolveBuildQueryInfoScRsp = 7149,
    CmdEvolveBuildUnlockInfoNotify = 7110,
    CmdEvolveBuildStartLevelScRsp = 7147,
    CmdEvolveBuildCoinNotify = 7104,
    CmdEvolveBuildTakeExpRewardScRsp = 7121,
    CmdEvolveBuildShopAbilityUpScRsp = 7135,
    CmdEvolveBuildReRandomStageScRsp = 7106,
    CmdEvolveBuildLeaveScRsp = 7101,
    CmdEvolveBuildGiveupScRsp = 7150,
    CmdEvolveBuildReRandomStageCsReq = 7131,
    CmdEvolveBuildTakeExpRewardCsReq = 7122,
    CmdEvolveBuildShopAbilityDownCsReq = 7103,
    CmdEvolveBuildShopAbilityResetCsReq = 7144,
    CmdEvolveBuildStartLevelCsReq = 7148,
    CmdEvolveBuildShopAbilityDownScRsp = 7145,
    CmdEvolveBuildStartStageCsReq = 7141,
    CmdEvolveBuildStartStageScRsp = 7136,
    CmdEvolveBuildGiveupCsReq = 7134,
    CmdEvolveBuildLeaveCsReq = 7117,
}
impl Dfbipgimhej {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Dfbipgimhej::CmdEvolveBuildNone => "CmdEvolveBuildNone",
            Dfbipgimhej::CmdEvolveBuildShopAbilityResetScRsp => {
                "CmdEvolveBuildShopAbilityResetScRsp"
            }
            Dfbipgimhej::CmdEvolveBuildFinishScNotify => "CmdEvolveBuildFinishScNotify",
            Dfbipgimhej::CmdEvolveBuildShopAbilityUpCsReq => {
                "CmdEvolveBuildShopAbilityUpCsReq"
            }
            Dfbipgimhej::CmdEvolveBuildQueryInfoCsReq => "CmdEvolveBuildQueryInfoCsReq",
            Dfbipgimhej::CmdEvolveBuildQueryInfoScRsp => "CmdEvolveBuildQueryInfoScRsp",
            Dfbipgimhej::CmdEvolveBuildUnlockInfoNotify => {
                "CmdEvolveBuildUnlockInfoNotify"
            }
            Dfbipgimhej::CmdEvolveBuildStartLevelScRsp => "CmdEvolveBuildStartLevelScRsp",
            Dfbipgimhej::CmdEvolveBuildCoinNotify => "CmdEvolveBuildCoinNotify",
            Dfbipgimhej::CmdEvolveBuildTakeExpRewardScRsp => {
                "CmdEvolveBuildTakeExpRewardScRsp"
            }
            Dfbipgimhej::CmdEvolveBuildShopAbilityUpScRsp => {
                "CmdEvolveBuildShopAbilityUpScRsp"
            }
            Dfbipgimhej::CmdEvolveBuildReRandomStageScRsp => {
                "CmdEvolveBuildReRandomStageScRsp"
            }
            Dfbipgimhej::CmdEvolveBuildLeaveScRsp => "CmdEvolveBuildLeaveScRsp",
            Dfbipgimhej::CmdEvolveBuildGiveupScRsp => "CmdEvolveBuildGiveupScRsp",
            Dfbipgimhej::CmdEvolveBuildReRandomStageCsReq => {
                "CmdEvolveBuildReRandomStageCsReq"
            }
            Dfbipgimhej::CmdEvolveBuildTakeExpRewardCsReq => {
                "CmdEvolveBuildTakeExpRewardCsReq"
            }
            Dfbipgimhej::CmdEvolveBuildShopAbilityDownCsReq => {
                "CmdEvolveBuildShopAbilityDownCsReq"
            }
            Dfbipgimhej::CmdEvolveBuildShopAbilityResetCsReq => {
                "CmdEvolveBuildShopAbilityResetCsReq"
            }
            Dfbipgimhej::CmdEvolveBuildStartLevelCsReq => "CmdEvolveBuildStartLevelCsReq",
            Dfbipgimhej::CmdEvolveBuildShopAbilityDownScRsp => {
                "CmdEvolveBuildShopAbilityDownScRsp"
            }
            Dfbipgimhej::CmdEvolveBuildStartStageCsReq => "CmdEvolveBuildStartStageCsReq",
            Dfbipgimhej::CmdEvolveBuildStartStageScRsp => "CmdEvolveBuildStartStageScRsp",
            Dfbipgimhej::CmdEvolveBuildGiveupCsReq => "CmdEvolveBuildGiveupCsReq",
            Dfbipgimhej::CmdEvolveBuildLeaveCsReq => "CmdEvolveBuildLeaveCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdEvolveBuildNone" => Some(Self::CmdEvolveBuildNone),
            "CmdEvolveBuildShopAbilityResetScRsp" => {
                Some(Self::CmdEvolveBuildShopAbilityResetScRsp)
            }
            "CmdEvolveBuildFinishScNotify" => Some(Self::CmdEvolveBuildFinishScNotify),
            "CmdEvolveBuildShopAbilityUpCsReq" => {
                Some(Self::CmdEvolveBuildShopAbilityUpCsReq)
            }
            "CmdEvolveBuildQueryInfoCsReq" => Some(Self::CmdEvolveBuildQueryInfoCsReq),
            "CmdEvolveBuildQueryInfoScRsp" => Some(Self::CmdEvolveBuildQueryInfoScRsp),
            "CmdEvolveBuildUnlockInfoNotify" => {
                Some(Self::CmdEvolveBuildUnlockInfoNotify)
            }
            "CmdEvolveBuildStartLevelScRsp" => Some(Self::CmdEvolveBuildStartLevelScRsp),
            "CmdEvolveBuildCoinNotify" => Some(Self::CmdEvolveBuildCoinNotify),
            "CmdEvolveBuildTakeExpRewardScRsp" => {
                Some(Self::CmdEvolveBuildTakeExpRewardScRsp)
            }
            "CmdEvolveBuildShopAbilityUpScRsp" => {
                Some(Self::CmdEvolveBuildShopAbilityUpScRsp)
            }
            "CmdEvolveBuildReRandomStageScRsp" => {
                Some(Self::CmdEvolveBuildReRandomStageScRsp)
            }
            "CmdEvolveBuildLeaveScRsp" => Some(Self::CmdEvolveBuildLeaveScRsp),
            "CmdEvolveBuildGiveupScRsp" => Some(Self::CmdEvolveBuildGiveupScRsp),
            "CmdEvolveBuildReRandomStageCsReq" => {
                Some(Self::CmdEvolveBuildReRandomStageCsReq)
            }
            "CmdEvolveBuildTakeExpRewardCsReq" => {
                Some(Self::CmdEvolveBuildTakeExpRewardCsReq)
            }
            "CmdEvolveBuildShopAbilityDownCsReq" => {
                Some(Self::CmdEvolveBuildShopAbilityDownCsReq)
            }
            "CmdEvolveBuildShopAbilityResetCsReq" => {
                Some(Self::CmdEvolveBuildShopAbilityResetCsReq)
            }
            "CmdEvolveBuildStartLevelCsReq" => Some(Self::CmdEvolveBuildStartLevelCsReq),
            "CmdEvolveBuildShopAbilityDownScRsp" => {
                Some(Self::CmdEvolveBuildShopAbilityDownScRsp)
            }
            "CmdEvolveBuildStartStageCsReq" => Some(Self::CmdEvolveBuildStartStageCsReq),
            "CmdEvolveBuildStartStageScRsp" => Some(Self::CmdEvolveBuildStartStageScRsp),
            "CmdEvolveBuildGiveupCsReq" => Some(Self::CmdEvolveBuildGiveupCsReq),
            "CmdEvolveBuildLeaveCsReq" => Some(Self::CmdEvolveBuildLeaveCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Hnapeaiabna {
    EvolvePeriodNone = 0,
    EvolvePeriodFirst = 1,
    EvolvePeriodSecond = 2,
    EvolvePeriodThird = 3,
    EvolvePeriodExtra = 4,
}
impl Hnapeaiabna {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Hnapeaiabna::EvolvePeriodNone => "EVOLVE_PERIOD_NONE",
            Hnapeaiabna::EvolvePeriodFirst => "EVOLVE_PERIOD_FIRST",
            Hnapeaiabna::EvolvePeriodSecond => "EVOLVE_PERIOD_SECOND",
            Hnapeaiabna::EvolvePeriodThird => "EVOLVE_PERIOD_THIRD",
            Hnapeaiabna::EvolvePeriodExtra => "EVOLVE_PERIOD_EXTRA",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "EVOLVE_PERIOD_NONE" => Some(Self::EvolvePeriodNone),
            "EVOLVE_PERIOD_FIRST" => Some(Self::EvolvePeriodFirst),
            "EVOLVE_PERIOD_SECOND" => Some(Self::EvolvePeriodSecond),
            "EVOLVE_PERIOD_THIRD" => Some(Self::EvolvePeriodThird),
            "EVOLVE_PERIOD_EXTRA" => Some(Self::EvolvePeriodExtra),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mndllmpgfgj {
    EvolveBattleResultNone = 0,
    EvolveBattleResultWin = 1,
    EvolveBattleResultAllAvatarDead = 2,
    EvolveBattleResultNoDeadLine = 3,
    EvolveBattleResultQuit = 4,
}
impl Mndllmpgfgj {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mndllmpgfgj::EvolveBattleResultNone => "EVOLVE_BATTLE_RESULT_NONE",
            Mndllmpgfgj::EvolveBattleResultWin => "EVOLVE_BATTLE_RESULT_WIN",
            Mndllmpgfgj::EvolveBattleResultAllAvatarDead => {
                "EVOLVE_BATTLE_RESULT_ALL_AVATAR_DEAD"
            }
            Mndllmpgfgj::EvolveBattleResultNoDeadLine => {
                "EVOLVE_BATTLE_RESULT_NO_DEAD_LINE"
            }
            Mndllmpgfgj::EvolveBattleResultQuit => "EVOLVE_BATTLE_RESULT_QUIT",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "EVOLVE_BATTLE_RESULT_NONE" => Some(Self::EvolveBattleResultNone),
            "EVOLVE_BATTLE_RESULT_WIN" => Some(Self::EvolveBattleResultWin),
            "EVOLVE_BATTLE_RESULT_ALL_AVATAR_DEAD" => {
                Some(Self::EvolveBattleResultAllAvatarDead)
            }
            "EVOLVE_BATTLE_RESULT_NO_DEAD_LINE" => {
                Some(Self::EvolveBattleResultNoDeadLine)
            }
            "EVOLVE_BATTLE_RESULT_QUIT" => Some(Self::EvolveBattleResultQuit),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Pfokmnnfiap {
    CmdExpeditionTypeNone = 0,
    CmdTakeMultipleExpeditionRewardCsReq = 2542,
    CmdGetExpeditionDataScRsp = 2548,
    CmdAcceptActivityExpeditionScRsp = 2545,
    CmdAcceptMultipleExpeditionCsReq = 2559,
    CmdAcceptMultipleExpeditionScRsp = 2595,
    CmdTakeMultipleExpeditionRewardScRsp = 2537,
    CmdCancelActivityExpeditionScRsp = 2596,
    CmdAcceptExpeditionCsReq = 2562,
    CmdAcceptActivityExpeditionCsReq = 2529,
    CmdTakeActivityExpeditionRewardCsReq = 2506,
    CmdAcceptExpeditionScRsp = 2588,
    CmdCancelExpeditionCsReq = 2502,
    CmdExpeditionDataChangeScNotify = 2586,
    CmdTakeExpeditionRewardScRsp = 2543,
    CmdCancelExpeditionScRsp = 2509,
    CmdTakeActivityExpeditionRewardScRsp = 2533,
    CmdGetExpeditionDataCsReq = 2534,
    CmdTakeExpeditionRewardCsReq = 2519,
    CmdCancelActivityExpeditionCsReq = 2568,
}
impl Pfokmnnfiap {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Pfokmnnfiap::CmdExpeditionTypeNone => "CmdExpeditionTypeNone",
            Pfokmnnfiap::CmdTakeMultipleExpeditionRewardCsReq => {
                "CmdTakeMultipleExpeditionRewardCsReq"
            }
            Pfokmnnfiap::CmdGetExpeditionDataScRsp => "CmdGetExpeditionDataScRsp",
            Pfokmnnfiap::CmdAcceptActivityExpeditionScRsp => {
                "CmdAcceptActivityExpeditionScRsp"
            }
            Pfokmnnfiap::CmdAcceptMultipleExpeditionCsReq => {
                "CmdAcceptMultipleExpeditionCsReq"
            }
            Pfokmnnfiap::CmdAcceptMultipleExpeditionScRsp => {
                "CmdAcceptMultipleExpeditionScRsp"
            }
            Pfokmnnfiap::CmdTakeMultipleExpeditionRewardScRsp => {
                "CmdTakeMultipleExpeditionRewardScRsp"
            }
            Pfokmnnfiap::CmdCancelActivityExpeditionScRsp => {
                "CmdCancelActivityExpeditionScRsp"
            }
            Pfokmnnfiap::CmdAcceptExpeditionCsReq => "CmdAcceptExpeditionCsReq",
            Pfokmnnfiap::CmdAcceptActivityExpeditionCsReq => {
                "CmdAcceptActivityExpeditionCsReq"
            }
            Pfokmnnfiap::CmdTakeActivityExpeditionRewardCsReq => {
                "CmdTakeActivityExpeditionRewardCsReq"
            }
            Pfokmnnfiap::CmdAcceptExpeditionScRsp => "CmdAcceptExpeditionScRsp",
            Pfokmnnfiap::CmdCancelExpeditionCsReq => "CmdCancelExpeditionCsReq",
            Pfokmnnfiap::CmdExpeditionDataChangeScNotify => {
                "CmdExpeditionDataChangeScNotify"
            }
            Pfokmnnfiap::CmdTakeExpeditionRewardScRsp => "CmdTakeExpeditionRewardScRsp",
            Pfokmnnfiap::CmdCancelExpeditionScRsp => "CmdCancelExpeditionScRsp",
            Pfokmnnfiap::CmdTakeActivityExpeditionRewardScRsp => {
                "CmdTakeActivityExpeditionRewardScRsp"
            }
            Pfokmnnfiap::CmdGetExpeditionDataCsReq => "CmdGetExpeditionDataCsReq",
            Pfokmnnfiap::CmdTakeExpeditionRewardCsReq => "CmdTakeExpeditionRewardCsReq",
            Pfokmnnfiap::CmdCancelActivityExpeditionCsReq => {
                "CmdCancelActivityExpeditionCsReq"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdExpeditionTypeNone" => Some(Self::CmdExpeditionTypeNone),
            "CmdTakeMultipleExpeditionRewardCsReq" => {
                Some(Self::CmdTakeMultipleExpeditionRewardCsReq)
            }
            "CmdGetExpeditionDataScRsp" => Some(Self::CmdGetExpeditionDataScRsp),
            "CmdAcceptActivityExpeditionScRsp" => {
                Some(Self::CmdAcceptActivityExpeditionScRsp)
            }
            "CmdAcceptMultipleExpeditionCsReq" => {
                Some(Self::CmdAcceptMultipleExpeditionCsReq)
            }
            "CmdAcceptMultipleExpeditionScRsp" => {
                Some(Self::CmdAcceptMultipleExpeditionScRsp)
            }
            "CmdTakeMultipleExpeditionRewardScRsp" => {
                Some(Self::CmdTakeMultipleExpeditionRewardScRsp)
            }
            "CmdCancelActivityExpeditionScRsp" => {
                Some(Self::CmdCancelActivityExpeditionScRsp)
            }
            "CmdAcceptExpeditionCsReq" => Some(Self::CmdAcceptExpeditionCsReq),
            "CmdAcceptActivityExpeditionCsReq" => {
                Some(Self::CmdAcceptActivityExpeditionCsReq)
            }
            "CmdTakeActivityExpeditionRewardCsReq" => {
                Some(Self::CmdTakeActivityExpeditionRewardCsReq)
            }
            "CmdAcceptExpeditionScRsp" => Some(Self::CmdAcceptExpeditionScRsp),
            "CmdCancelExpeditionCsReq" => Some(Self::CmdCancelExpeditionCsReq),
            "CmdExpeditionDataChangeScNotify" => {
                Some(Self::CmdExpeditionDataChangeScNotify)
            }
            "CmdTakeExpeditionRewardScRsp" => Some(Self::CmdTakeExpeditionRewardScRsp),
            "CmdCancelExpeditionScRsp" => Some(Self::CmdCancelExpeditionScRsp),
            "CmdTakeActivityExpeditionRewardScRsp" => {
                Some(Self::CmdTakeActivityExpeditionRewardScRsp)
            }
            "CmdGetExpeditionDataCsReq" => Some(Self::CmdGetExpeditionDataCsReq),
            "CmdTakeExpeditionRewardCsReq" => Some(Self::CmdTakeExpeditionRewardCsReq),
            "CmdCancelActivityExpeditionCsReq" => {
                Some(Self::CmdCancelActivityExpeditionCsReq)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Hibpjakgljk {
    CmdFantasticStoryActivityTypeNone = 0,
    CmdEnterFantasticStoryActivityStageCsReq = 4988,
    CmdEnterFantasticStoryActivityStageScRsp = 4902,
    CmdFinishChapterScNotify = 4962,
    CmdGetFantasticStoryActivityDataScRsp = 4948,
    CmdFantasticStoryActivityBattleEndScNotify = 4909,
    CmdGetFantasticStoryActivityDataCsReq = 4934,
}
impl Hibpjakgljk {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Hibpjakgljk::CmdFantasticStoryActivityTypeNone => {
                "CmdFantasticStoryActivityTypeNone"
            }
            Hibpjakgljk::CmdEnterFantasticStoryActivityStageCsReq => {
                "CmdEnterFantasticStoryActivityStageCsReq"
            }
            Hibpjakgljk::CmdEnterFantasticStoryActivityStageScRsp => {
                "CmdEnterFantasticStoryActivityStageScRsp"
            }
            Hibpjakgljk::CmdFinishChapterScNotify => "CmdFinishChapterScNotify",
            Hibpjakgljk::CmdGetFantasticStoryActivityDataScRsp => {
                "CmdGetFantasticStoryActivityDataScRsp"
            }
            Hibpjakgljk::CmdFantasticStoryActivityBattleEndScNotify => {
                "CmdFantasticStoryActivityBattleEndScNotify"
            }
            Hibpjakgljk::CmdGetFantasticStoryActivityDataCsReq => {
                "CmdGetFantasticStoryActivityDataCsReq"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdFantasticStoryActivityTypeNone" => {
                Some(Self::CmdFantasticStoryActivityTypeNone)
            }
            "CmdEnterFantasticStoryActivityStageCsReq" => {
                Some(Self::CmdEnterFantasticStoryActivityStageCsReq)
            }
            "CmdEnterFantasticStoryActivityStageScRsp" => {
                Some(Self::CmdEnterFantasticStoryActivityStageScRsp)
            }
            "CmdFinishChapterScNotify" => Some(Self::CmdFinishChapterScNotify),
            "CmdGetFantasticStoryActivityDataScRsp" => {
                Some(Self::CmdGetFantasticStoryActivityDataScRsp)
            }
            "CmdFantasticStoryActivityBattleEndScNotify" => {
                Some(Self::CmdFantasticStoryActivityBattleEndScNotify)
            }
            "CmdGetFantasticStoryActivityDataCsReq" => {
                Some(Self::CmdGetFantasticStoryActivityDataCsReq)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Ogodifjjdle {
    CmdFeverTimeActivityTypeNone = 0,
    CmdGetFeverTimeActivityDataCsReq = 7156,
    CmdFeverTimeActivityBattleEndScNotify = 7153,
    CmdEnterFeverTimeActivityStageScRsp = 7159,
    CmdGetFeverTimeActivityDataScRsp = 7154,
    CmdEnterFeverTimeActivityStageCsReq = 7151,
}
impl Ogodifjjdle {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Ogodifjjdle::CmdFeverTimeActivityTypeNone => "CmdFeverTimeActivityTypeNone",
            Ogodifjjdle::CmdGetFeverTimeActivityDataCsReq => {
                "CmdGetFeverTimeActivityDataCsReq"
            }
            Ogodifjjdle::CmdFeverTimeActivityBattleEndScNotify => {
                "CmdFeverTimeActivityBattleEndScNotify"
            }
            Ogodifjjdle::CmdEnterFeverTimeActivityStageScRsp => {
                "CmdEnterFeverTimeActivityStageScRsp"
            }
            Ogodifjjdle::CmdGetFeverTimeActivityDataScRsp => {
                "CmdGetFeverTimeActivityDataScRsp"
            }
            Ogodifjjdle::CmdEnterFeverTimeActivityStageCsReq => {
                "CmdEnterFeverTimeActivityStageCsReq"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdFeverTimeActivityTypeNone" => Some(Self::CmdFeverTimeActivityTypeNone),
            "CmdGetFeverTimeActivityDataCsReq" => {
                Some(Self::CmdGetFeverTimeActivityDataCsReq)
            }
            "CmdFeverTimeActivityBattleEndScNotify" => {
                Some(Self::CmdFeverTimeActivityBattleEndScNotify)
            }
            "CmdEnterFeverTimeActivityStageScRsp" => {
                Some(Self::CmdEnterFeverTimeActivityStageScRsp)
            }
            "CmdGetFeverTimeActivityDataScRsp" => {
                Some(Self::CmdGetFeverTimeActivityDataScRsp)
            }
            "CmdEnterFeverTimeActivityStageCsReq" => {
                Some(Self::CmdEnterFeverTimeActivityStageCsReq)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mhomligaiji {
    FeverTimeBattleRankC = 0,
    FeverTimeBattleRankB = 1,
    FeverTimeBattleRankA = 2,
    FeverTimeBattleRankS = 3,
    FeverTimeBattleRankSs = 4,
}
impl Mhomligaiji {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mhomligaiji::FeverTimeBattleRankC => "FEVER_TIME_BATTLE_RANK_C",
            Mhomligaiji::FeverTimeBattleRankB => "FEVER_TIME_BATTLE_RANK_B",
            Mhomligaiji::FeverTimeBattleRankA => "FEVER_TIME_BATTLE_RANK_A",
            Mhomligaiji::FeverTimeBattleRankS => "FEVER_TIME_BATTLE_RANK_S",
            Mhomligaiji::FeverTimeBattleRankSs => "FEVER_TIME_BATTLE_RANK_SS",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "FEVER_TIME_BATTLE_RANK_C" => Some(Self::FeverTimeBattleRankC),
            "FEVER_TIME_BATTLE_RANK_B" => Some(Self::FeverTimeBattleRankB),
            "FEVER_TIME_BATTLE_RANK_A" => Some(Self::FeverTimeBattleRankA),
            "FEVER_TIME_BATTLE_RANK_S" => Some(Self::FeverTimeBattleRankS),
            "FEVER_TIME_BATTLE_RANK_SS" => Some(Self::FeverTimeBattleRankSs),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Aaihejacdpk {
    CmdFightActivityTypeNone = 0,
    CmdEnterFightActivityStageScRsp = 3602,
    CmdGetFightActivityDataScRsp = 3648,
    CmdFightActivityDataChangeScNotify = 3662,
    CmdTakeFightActivityRewardCsReq = 3609,
    CmdGetFightActivityDataCsReq = 3634,
    CmdEnterFightActivityStageCsReq = 3688,
    CmdTakeFightActivityRewardScRsp = 3619,
}
impl Aaihejacdpk {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Aaihejacdpk::CmdFightActivityTypeNone => "CmdFightActivityTypeNone",
            Aaihejacdpk::CmdEnterFightActivityStageScRsp => {
                "CmdEnterFightActivityStageScRsp"
            }
            Aaihejacdpk::CmdGetFightActivityDataScRsp => "CmdGetFightActivityDataScRsp",
            Aaihejacdpk::CmdFightActivityDataChangeScNotify => {
                "CmdFightActivityDataChangeScNotify"
            }
            Aaihejacdpk::CmdTakeFightActivityRewardCsReq => {
                "CmdTakeFightActivityRewardCsReq"
            }
            Aaihejacdpk::CmdGetFightActivityDataCsReq => "CmdGetFightActivityDataCsReq",
            Aaihejacdpk::CmdEnterFightActivityStageCsReq => {
                "CmdEnterFightActivityStageCsReq"
            }
            Aaihejacdpk::CmdTakeFightActivityRewardScRsp => {
                "CmdTakeFightActivityRewardScRsp"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdFightActivityTypeNone" => Some(Self::CmdFightActivityTypeNone),
            "CmdEnterFightActivityStageScRsp" => {
                Some(Self::CmdEnterFightActivityStageScRsp)
            }
            "CmdGetFightActivityDataScRsp" => Some(Self::CmdGetFightActivityDataScRsp),
            "CmdFightActivityDataChangeScNotify" => {
                Some(Self::CmdFightActivityDataChangeScNotify)
            }
            "CmdTakeFightActivityRewardCsReq" => {
                Some(Self::CmdTakeFightActivityRewardCsReq)
            }
            "CmdGetFightActivityDataCsReq" => Some(Self::CmdGetFightActivityDataCsReq),
            "CmdEnterFightActivityStageCsReq" => {
                Some(Self::CmdEnterFightActivityStageCsReq)
            }
            "CmdTakeFightActivityRewardScRsp" => {
                Some(Self::CmdTakeFightActivityRewardScRsp)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Pjmghcfmmge {
    CmdFriendTypeNone = 0,
    CmdGetFriendChallengeLineupScRsp = 2904,
    CmdGetFriendLoginInfoScRsp = 2967,
    CmdSyncHandleFriendScNotify = 2968,
    CmdGetFriendApplyListInfoCsReq = 2902,
    CmdGetFriendRecommendListInfoCsReq = 2937,
    CmdGetPlatformPlayerInfoScRsp = 2989,
    CmdGetPlayerDetailInfoCsReq = 2962,
    CmdGetAssistListCsReq = 2961,
    CmdGetFriendRecommendListInfoScRsp = 2939,
    CmdGetPlatformPlayerInfoCsReq = 2965,
    CmdGetFriendListInfoCsReq = 2934,
    CmdSetAssistScRsp = 2997,
    CmdSetForbidOtherApplyFriendCsReq = 2992,
    CmdGetCurAssistCsReq = 2924,
    CmdAddBlacklistCsReq = 2959,
    CmdApplyFriendCsReq = 2919,
    CmdAddBlacklistScRsp = 2995,
    CmdReportPlayerCsReq = 2985,
    CmdGetFriendBattleRecordDetailCsReq = 2998,
    CmdGetFriendBattleRecordDetailScRsp = 2971,
    CmdSetFriendRemarkNameScRsp = 2930,
    CmdGetFriendLoginInfoCsReq = 2990,
    CmdTakeAssistRewardScRsp = 2925,
    CmdCurAssistChangedNotify = 3000,
    CmdGetFriendChallengeDetailScRsp = 2993,
    CmdSearchPlayerScRsp = 2928,
    CmdGetFriendChallengeLineupCsReq = 2944,
    CmdSetAssistCsReq = 2991,
    CmdGetAssistListScRsp = 2918,
    CmdGetPlayerDetailInfoScRsp = 2988,
    CmdSetForbidOtherApplyFriendScRsp = 2955,
    CmdHandleFriendCsReq = 2929,
    CmdSetFriendMarkCsReq = 2966,
    CmdGetFriendDevelopmentInfoScRsp = 2903,
    CmdSearchPlayerCsReq = 2941,
    CmdSetFriendRemarkNameCsReq = 2916,
    CmdGetAssistHistoryScRsp = 2908,
    CmdGetFriendApplyListInfoScRsp = 2909,
    CmdDeleteBlacklistCsReq = 2963,
    CmdGetFriendAssistListCsReq = 2951,
    CmdSyncApplyFriendScNotify = 2986,
    CmdReportPlayerScRsp = 2956,
    CmdSyncAddBlacklistScNotify = 2942,
    CmdDeleteFriendScRsp = 2906,
    CmdDeleteFriendCsReq = 2996,
    CmdSyncDeleteFriendScNotify = 2933,
    CmdApplyFriendScRsp = 2943,
    CmdTakeAssistRewardCsReq = 2979,
    CmdHandleFriendScRsp = 2945,
    CmdSetFriendMarkScRsp = 2973,
    CmdGetFriendDevelopmentInfoCsReq = 2949,
    CmdGetCurAssistScRsp = 2982,
    CmdGetFriendChallengeDetailCsReq = 2975,
    CmdDeleteBlacklistScRsp = 2901,
    CmdNewAssistHistoryNotify = 2954,
    CmdGetFriendAssistListScRsp = 2935,
    CmdGetAssistHistoryCsReq = 2911,
    CmdGetFriendListInfoScRsp = 2948,
}
impl Pjmghcfmmge {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Pjmghcfmmge::CmdFriendTypeNone => "CmdFriendTypeNone",
            Pjmghcfmmge::CmdGetFriendChallengeLineupScRsp => {
                "CmdGetFriendChallengeLineupScRsp"
            }
            Pjmghcfmmge::CmdGetFriendLoginInfoScRsp => "CmdGetFriendLoginInfoScRsp",
            Pjmghcfmmge::CmdSyncHandleFriendScNotify => "CmdSyncHandleFriendScNotify",
            Pjmghcfmmge::CmdGetFriendApplyListInfoCsReq => {
                "CmdGetFriendApplyListInfoCsReq"
            }
            Pjmghcfmmge::CmdGetFriendRecommendListInfoCsReq => {
                "CmdGetFriendRecommendListInfoCsReq"
            }
            Pjmghcfmmge::CmdGetPlatformPlayerInfoScRsp => "CmdGetPlatformPlayerInfoScRsp",
            Pjmghcfmmge::CmdGetPlayerDetailInfoCsReq => "CmdGetPlayerDetailInfoCsReq",
            Pjmghcfmmge::CmdGetAssistListCsReq => "CmdGetAssistListCsReq",
            Pjmghcfmmge::CmdGetFriendRecommendListInfoScRsp => {
                "CmdGetFriendRecommendListInfoScRsp"
            }
            Pjmghcfmmge::CmdGetPlatformPlayerInfoCsReq => "CmdGetPlatformPlayerInfoCsReq",
            Pjmghcfmmge::CmdGetFriendListInfoCsReq => "CmdGetFriendListInfoCsReq",
            Pjmghcfmmge::CmdSetAssistScRsp => "CmdSetAssistScRsp",
            Pjmghcfmmge::CmdSetForbidOtherApplyFriendCsReq => {
                "CmdSetForbidOtherApplyFriendCsReq"
            }
            Pjmghcfmmge::CmdGetCurAssistCsReq => "CmdGetCurAssistCsReq",
            Pjmghcfmmge::CmdAddBlacklistCsReq => "CmdAddBlacklistCsReq",
            Pjmghcfmmge::CmdApplyFriendCsReq => "CmdApplyFriendCsReq",
            Pjmghcfmmge::CmdAddBlacklistScRsp => "CmdAddBlacklistScRsp",
            Pjmghcfmmge::CmdReportPlayerCsReq => "CmdReportPlayerCsReq",
            Pjmghcfmmge::CmdGetFriendBattleRecordDetailCsReq => {
                "CmdGetFriendBattleRecordDetailCsReq"
            }
            Pjmghcfmmge::CmdGetFriendBattleRecordDetailScRsp => {
                "CmdGetFriendBattleRecordDetailScRsp"
            }
            Pjmghcfmmge::CmdSetFriendRemarkNameScRsp => "CmdSetFriendRemarkNameScRsp",
            Pjmghcfmmge::CmdGetFriendLoginInfoCsReq => "CmdGetFriendLoginInfoCsReq",
            Pjmghcfmmge::CmdTakeAssistRewardScRsp => "CmdTakeAssistRewardScRsp",
            Pjmghcfmmge::CmdCurAssistChangedNotify => "CmdCurAssistChangedNotify",
            Pjmghcfmmge::CmdGetFriendChallengeDetailScRsp => {
                "CmdGetFriendChallengeDetailScRsp"
            }
            Pjmghcfmmge::CmdSearchPlayerScRsp => "CmdSearchPlayerScRsp",
            Pjmghcfmmge::CmdGetFriendChallengeLineupCsReq => {
                "CmdGetFriendChallengeLineupCsReq"
            }
            Pjmghcfmmge::CmdSetAssistCsReq => "CmdSetAssistCsReq",
            Pjmghcfmmge::CmdGetAssistListScRsp => "CmdGetAssistListScRsp",
            Pjmghcfmmge::CmdGetPlayerDetailInfoScRsp => "CmdGetPlayerDetailInfoScRsp",
            Pjmghcfmmge::CmdSetForbidOtherApplyFriendScRsp => {
                "CmdSetForbidOtherApplyFriendScRsp"
            }
            Pjmghcfmmge::CmdHandleFriendCsReq => "CmdHandleFriendCsReq",
            Pjmghcfmmge::CmdSetFriendMarkCsReq => "CmdSetFriendMarkCsReq",
            Pjmghcfmmge::CmdGetFriendDevelopmentInfoScRsp => {
                "CmdGetFriendDevelopmentInfoScRsp"
            }
            Pjmghcfmmge::CmdSearchPlayerCsReq => "CmdSearchPlayerCsReq",
            Pjmghcfmmge::CmdSetFriendRemarkNameCsReq => "CmdSetFriendRemarkNameCsReq",
            Pjmghcfmmge::CmdGetAssistHistoryScRsp => "CmdGetAssistHistoryScRsp",
            Pjmghcfmmge::CmdGetFriendApplyListInfoScRsp => {
                "CmdGetFriendApplyListInfoScRsp"
            }
            Pjmghcfmmge::CmdDeleteBlacklistCsReq => "CmdDeleteBlacklistCsReq",
            Pjmghcfmmge::CmdGetFriendAssistListCsReq => "CmdGetFriendAssistListCsReq",
            Pjmghcfmmge::CmdSyncApplyFriendScNotify => "CmdSyncApplyFriendScNotify",
            Pjmghcfmmge::CmdReportPlayerScRsp => "CmdReportPlayerScRsp",
            Pjmghcfmmge::CmdSyncAddBlacklistScNotify => "CmdSyncAddBlacklistScNotify",
            Pjmghcfmmge::CmdDeleteFriendScRsp => "CmdDeleteFriendScRsp",
            Pjmghcfmmge::CmdDeleteFriendCsReq => "CmdDeleteFriendCsReq",
            Pjmghcfmmge::CmdSyncDeleteFriendScNotify => "CmdSyncDeleteFriendScNotify",
            Pjmghcfmmge::CmdApplyFriendScRsp => "CmdApplyFriendScRsp",
            Pjmghcfmmge::CmdTakeAssistRewardCsReq => "CmdTakeAssistRewardCsReq",
            Pjmghcfmmge::CmdHandleFriendScRsp => "CmdHandleFriendScRsp",
            Pjmghcfmmge::CmdSetFriendMarkScRsp => "CmdSetFriendMarkScRsp",
            Pjmghcfmmge::CmdGetFriendDevelopmentInfoCsReq => {
                "CmdGetFriendDevelopmentInfoCsReq"
            }
            Pjmghcfmmge::CmdGetCurAssistScRsp => "CmdGetCurAssistScRsp",
            Pjmghcfmmge::CmdGetFriendChallengeDetailCsReq => {
                "CmdGetFriendChallengeDetailCsReq"
            }
            Pjmghcfmmge::CmdDeleteBlacklistScRsp => "CmdDeleteBlacklistScRsp",
            Pjmghcfmmge::CmdNewAssistHistoryNotify => "CmdNewAssistHistoryNotify",
            Pjmghcfmmge::CmdGetFriendAssistListScRsp => "CmdGetFriendAssistListScRsp",
            Pjmghcfmmge::CmdGetAssistHistoryCsReq => "CmdGetAssistHistoryCsReq",
            Pjmghcfmmge::CmdGetFriendListInfoScRsp => "CmdGetFriendListInfoScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdFriendTypeNone" => Some(Self::CmdFriendTypeNone),
            "CmdGetFriendChallengeLineupScRsp" => {
                Some(Self::CmdGetFriendChallengeLineupScRsp)
            }
            "CmdGetFriendLoginInfoScRsp" => Some(Self::CmdGetFriendLoginInfoScRsp),
            "CmdSyncHandleFriendScNotify" => Some(Self::CmdSyncHandleFriendScNotify),
            "CmdGetFriendApplyListInfoCsReq" => {
                Some(Self::CmdGetFriendApplyListInfoCsReq)
            }
            "CmdGetFriendRecommendListInfoCsReq" => {
                Some(Self::CmdGetFriendRecommendListInfoCsReq)
            }
            "CmdGetPlatformPlayerInfoScRsp" => Some(Self::CmdGetPlatformPlayerInfoScRsp),
            "CmdGetPlayerDetailInfoCsReq" => Some(Self::CmdGetPlayerDetailInfoCsReq),
            "CmdGetAssistListCsReq" => Some(Self::CmdGetAssistListCsReq),
            "CmdGetFriendRecommendListInfoScRsp" => {
                Some(Self::CmdGetFriendRecommendListInfoScRsp)
            }
            "CmdGetPlatformPlayerInfoCsReq" => Some(Self::CmdGetPlatformPlayerInfoCsReq),
            "CmdGetFriendListInfoCsReq" => Some(Self::CmdGetFriendListInfoCsReq),
            "CmdSetAssistScRsp" => Some(Self::CmdSetAssistScRsp),
            "CmdSetForbidOtherApplyFriendCsReq" => {
                Some(Self::CmdSetForbidOtherApplyFriendCsReq)
            }
            "CmdGetCurAssistCsReq" => Some(Self::CmdGetCurAssistCsReq),
            "CmdAddBlacklistCsReq" => Some(Self::CmdAddBlacklistCsReq),
            "CmdApplyFriendCsReq" => Some(Self::CmdApplyFriendCsReq),
            "CmdAddBlacklistScRsp" => Some(Self::CmdAddBlacklistScRsp),
            "CmdReportPlayerCsReq" => Some(Self::CmdReportPlayerCsReq),
            "CmdGetFriendBattleRecordDetailCsReq" => {
                Some(Self::CmdGetFriendBattleRecordDetailCsReq)
            }
            "CmdGetFriendBattleRecordDetailScRsp" => {
                Some(Self::CmdGetFriendBattleRecordDetailScRsp)
            }
            "CmdSetFriendRemarkNameScRsp" => Some(Self::CmdSetFriendRemarkNameScRsp),
            "CmdGetFriendLoginInfoCsReq" => Some(Self::CmdGetFriendLoginInfoCsReq),
            "CmdTakeAssistRewardScRsp" => Some(Self::CmdTakeAssistRewardScRsp),
            "CmdCurAssistChangedNotify" => Some(Self::CmdCurAssistChangedNotify),
            "CmdGetFriendChallengeDetailScRsp" => {
                Some(Self::CmdGetFriendChallengeDetailScRsp)
            }
            "CmdSearchPlayerScRsp" => Some(Self::CmdSearchPlayerScRsp),
            "CmdGetFriendChallengeLineupCsReq" => {
                Some(Self::CmdGetFriendChallengeLineupCsReq)
            }
            "CmdSetAssistCsReq" => Some(Self::CmdSetAssistCsReq),
            "CmdGetAssistListScRsp" => Some(Self::CmdGetAssistListScRsp),
            "CmdGetPlayerDetailInfoScRsp" => Some(Self::CmdGetPlayerDetailInfoScRsp),
            "CmdSetForbidOtherApplyFriendScRsp" => {
                Some(Self::CmdSetForbidOtherApplyFriendScRsp)
            }
            "CmdHandleFriendCsReq" => Some(Self::CmdHandleFriendCsReq),
            "CmdSetFriendMarkCsReq" => Some(Self::CmdSetFriendMarkCsReq),
            "CmdGetFriendDevelopmentInfoScRsp" => {
                Some(Self::CmdGetFriendDevelopmentInfoScRsp)
            }
            "CmdSearchPlayerCsReq" => Some(Self::CmdSearchPlayerCsReq),
            "CmdSetFriendRemarkNameCsReq" => Some(Self::CmdSetFriendRemarkNameCsReq),
            "CmdGetAssistHistoryScRsp" => Some(Self::CmdGetAssistHistoryScRsp),
            "CmdGetFriendApplyListInfoScRsp" => {
                Some(Self::CmdGetFriendApplyListInfoScRsp)
            }
            "CmdDeleteBlacklistCsReq" => Some(Self::CmdDeleteBlacklistCsReq),
            "CmdGetFriendAssistListCsReq" => Some(Self::CmdGetFriendAssistListCsReq),
            "CmdSyncApplyFriendScNotify" => Some(Self::CmdSyncApplyFriendScNotify),
            "CmdReportPlayerScRsp" => Some(Self::CmdReportPlayerScRsp),
            "CmdSyncAddBlacklistScNotify" => Some(Self::CmdSyncAddBlacklistScNotify),
            "CmdDeleteFriendScRsp" => Some(Self::CmdDeleteFriendScRsp),
            "CmdDeleteFriendCsReq" => Some(Self::CmdDeleteFriendCsReq),
            "CmdSyncDeleteFriendScNotify" => Some(Self::CmdSyncDeleteFriendScNotify),
            "CmdApplyFriendScRsp" => Some(Self::CmdApplyFriendScRsp),
            "CmdTakeAssistRewardCsReq" => Some(Self::CmdTakeAssistRewardCsReq),
            "CmdHandleFriendScRsp" => Some(Self::CmdHandleFriendScRsp),
            "CmdSetFriendMarkScRsp" => Some(Self::CmdSetFriendMarkScRsp),
            "CmdGetFriendDevelopmentInfoCsReq" => {
                Some(Self::CmdGetFriendDevelopmentInfoCsReq)
            }
            "CmdGetCurAssistScRsp" => Some(Self::CmdGetCurAssistScRsp),
            "CmdGetFriendChallengeDetailCsReq" => {
                Some(Self::CmdGetFriendChallengeDetailCsReq)
            }
            "CmdDeleteBlacklistScRsp" => Some(Self::CmdDeleteBlacklistScRsp),
            "CmdNewAssistHistoryNotify" => Some(Self::CmdNewAssistHistoryNotify),
            "CmdGetFriendAssistListScRsp" => Some(Self::CmdGetFriendAssistListScRsp),
            "CmdGetAssistHistoryCsReq" => Some(Self::CmdGetAssistHistoryCsReq),
            "CmdGetFriendListInfoScRsp" => Some(Self::CmdGetFriendListInfoScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Oofkgobopdi {
    FriendOnlineStatusOffline = 0,
    FriendOnlineStatusOnline = 1,
}
impl Oofkgobopdi {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Oofkgobopdi::FriendOnlineStatusOffline => "FRIEND_ONLINE_STATUS_OFFLINE",
            Oofkgobopdi::FriendOnlineStatusOnline => "FRIEND_ONLINE_STATUS_ONLINE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "FRIEND_ONLINE_STATUS_OFFLINE" => Some(Self::FriendOnlineStatusOffline),
            "FRIEND_ONLINE_STATUS_ONLINE" => Some(Self::FriendOnlineStatusOnline),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Lcncckjbfip {
    FriendApplySourceNone = 0,
    FriendApplySourceSearch = 1,
    FriendApplySourceRecommend = 2,
    FriendApplySourceAssist = 3,
    FriendApplySourceRecommendAssist = 4,
    FriendApplySourcePsnFriend = 5,
    FriendApplySourceAssistReward = 6,
}
impl Lcncckjbfip {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Lcncckjbfip::FriendApplySourceNone => "FRIEND_APPLY_SOURCE_NONE",
            Lcncckjbfip::FriendApplySourceSearch => "FRIEND_APPLY_SOURCE_SEARCH",
            Lcncckjbfip::FriendApplySourceRecommend => "FRIEND_APPLY_SOURCE_RECOMMEND",
            Lcncckjbfip::FriendApplySourceAssist => "FRIEND_APPLY_SOURCE_ASSIST",
            Lcncckjbfip::FriendApplySourceRecommendAssist => {
                "FRIEND_APPLY_SOURCE_RECOMMEND_ASSIST"
            }
            Lcncckjbfip::FriendApplySourcePsnFriend => "FRIEND_APPLY_SOURCE_PSN_FRIEND",
            Lcncckjbfip::FriendApplySourceAssistReward => {
                "FRIEND_APPLY_SOURCE_ASSIST_REWARD"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "FRIEND_APPLY_SOURCE_NONE" => Some(Self::FriendApplySourceNone),
            "FRIEND_APPLY_SOURCE_SEARCH" => Some(Self::FriendApplySourceSearch),
            "FRIEND_APPLY_SOURCE_RECOMMEND" => Some(Self::FriendApplySourceRecommend),
            "FRIEND_APPLY_SOURCE_ASSIST" => Some(Self::FriendApplySourceAssist),
            "FRIEND_APPLY_SOURCE_RECOMMEND_ASSIST" => {
                Some(Self::FriendApplySourceRecommendAssist)
            }
            "FRIEND_APPLY_SOURCE_PSN_FRIEND" => Some(Self::FriendApplySourcePsnFriend),
            "FRIEND_APPLY_SOURCE_ASSIST_REWARD" => {
                Some(Self::FriendApplySourceAssistReward)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Hfjpennlffa {
    CmdGachaTypeNone = 0,
    CmdExchangeGachaCeilingScRsp = 1943,
    CmdDoGachaCsReq = 1962,
    CmdDoGachaScRsp = 1988,
    CmdGetGachaInfoScRsp = 1948,
    CmdGetGachaInfoCsReq = 1934,
    CmdExchangeGachaCeilingCsReq = 1919,
    CmdGetGachaCeilingCsReq = 1902,
    CmdGetGachaCeilingScRsp = 1909,
}
impl Hfjpennlffa {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Hfjpennlffa::CmdGachaTypeNone => "CmdGachaTypeNone",
            Hfjpennlffa::CmdExchangeGachaCeilingScRsp => "CmdExchangeGachaCeilingScRsp",
            Hfjpennlffa::CmdDoGachaCsReq => "CmdDoGachaCsReq",
            Hfjpennlffa::CmdDoGachaScRsp => "CmdDoGachaScRsp",
            Hfjpennlffa::CmdGetGachaInfoScRsp => "CmdGetGachaInfoScRsp",
            Hfjpennlffa::CmdGetGachaInfoCsReq => "CmdGetGachaInfoCsReq",
            Hfjpennlffa::CmdExchangeGachaCeilingCsReq => "CmdExchangeGachaCeilingCsReq",
            Hfjpennlffa::CmdGetGachaCeilingCsReq => "CmdGetGachaCeilingCsReq",
            Hfjpennlffa::CmdGetGachaCeilingScRsp => "CmdGetGachaCeilingScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdGachaTypeNone" => Some(Self::CmdGachaTypeNone),
            "CmdExchangeGachaCeilingScRsp" => Some(Self::CmdExchangeGachaCeilingScRsp),
            "CmdDoGachaCsReq" => Some(Self::CmdDoGachaCsReq),
            "CmdDoGachaScRsp" => Some(Self::CmdDoGachaScRsp),
            "CmdGetGachaInfoScRsp" => Some(Self::CmdGetGachaInfoScRsp),
            "CmdGetGachaInfoCsReq" => Some(Self::CmdGetGachaInfoCsReq),
            "CmdExchangeGachaCeilingCsReq" => Some(Self::CmdExchangeGachaCeilingCsReq),
            "CmdGetGachaCeilingCsReq" => Some(Self::CmdGetGachaCeilingCsReq),
            "CmdGetGachaCeilingScRsp" => Some(Self::CmdGetGachaCeilingScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Ipkfoknigap {
    CmdHeartdialTypeNone = 0,
    CmdGetHeartDialInfoScRsp = 6348,
    CmdFinishEmotionDialoguePerformanceCsReq = 6319,
    CmdFinishEmotionDialoguePerformanceScRsp = 6343,
    CmdHeartDialTraceScriptScRsp = 6345,
    CmdChangeScriptEmotionCsReq = 6362,
    CmdSubmitEmotionItemScRsp = 6309,
    CmdHeartDialTraceScriptCsReq = 6329,
    CmdChangeScriptEmotionScRsp = 6388,
    CmdGetHeartDialInfoCsReq = 6334,
    CmdSubmitEmotionItemCsReq = 6302,
    CmdHeartDialScriptChangeScNotify = 6386,
}
impl Ipkfoknigap {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Ipkfoknigap::CmdHeartdialTypeNone => "CmdHeartdialTypeNone",
            Ipkfoknigap::CmdGetHeartDialInfoScRsp => "CmdGetHeartDialInfoScRsp",
            Ipkfoknigap::CmdFinishEmotionDialoguePerformanceCsReq => {
                "CmdFinishEmotionDialoguePerformanceCsReq"
            }
            Ipkfoknigap::CmdFinishEmotionDialoguePerformanceScRsp => {
                "CmdFinishEmotionDialoguePerformanceScRsp"
            }
            Ipkfoknigap::CmdHeartDialTraceScriptScRsp => "CmdHeartDialTraceScriptScRsp",
            Ipkfoknigap::CmdChangeScriptEmotionCsReq => "CmdChangeScriptEmotionCsReq",
            Ipkfoknigap::CmdSubmitEmotionItemScRsp => "CmdSubmitEmotionItemScRsp",
            Ipkfoknigap::CmdHeartDialTraceScriptCsReq => "CmdHeartDialTraceScriptCsReq",
            Ipkfoknigap::CmdChangeScriptEmotionScRsp => "CmdChangeScriptEmotionScRsp",
            Ipkfoknigap::CmdGetHeartDialInfoCsReq => "CmdGetHeartDialInfoCsReq",
            Ipkfoknigap::CmdSubmitEmotionItemCsReq => "CmdSubmitEmotionItemCsReq",
            Ipkfoknigap::CmdHeartDialScriptChangeScNotify => {
                "CmdHeartDialScriptChangeScNotify"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdHeartdialTypeNone" => Some(Self::CmdHeartdialTypeNone),
            "CmdGetHeartDialInfoScRsp" => Some(Self::CmdGetHeartDialInfoScRsp),
            "CmdFinishEmotionDialoguePerformanceCsReq" => {
                Some(Self::CmdFinishEmotionDialoguePerformanceCsReq)
            }
            "CmdFinishEmotionDialoguePerformanceScRsp" => {
                Some(Self::CmdFinishEmotionDialoguePerformanceScRsp)
            }
            "CmdHeartDialTraceScriptScRsp" => Some(Self::CmdHeartDialTraceScriptScRsp),
            "CmdChangeScriptEmotionCsReq" => Some(Self::CmdChangeScriptEmotionCsReq),
            "CmdSubmitEmotionItemScRsp" => Some(Self::CmdSubmitEmotionItemScRsp),
            "CmdHeartDialTraceScriptCsReq" => Some(Self::CmdHeartDialTraceScriptCsReq),
            "CmdChangeScriptEmotionScRsp" => Some(Self::CmdChangeScriptEmotionScRsp),
            "CmdGetHeartDialInfoCsReq" => Some(Self::CmdGetHeartDialInfoCsReq),
            "CmdSubmitEmotionItemCsReq" => Some(Self::CmdSubmitEmotionItemCsReq),
            "CmdHeartDialScriptChangeScNotify" => {
                Some(Self::CmdHeartDialScriptChangeScNotify)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Iclildeepli {
    HeartDialEmotionTypePeace = 0,
    HeartDialEmotionTypeAnger = 1,
    HeartDialEmotionTypeHappy = 2,
    HeartDialEmotionTypeSad = 3,
}
impl Iclildeepli {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Iclildeepli::HeartDialEmotionTypePeace => "HEART_DIAL_EMOTION_TYPE_PEACE",
            Iclildeepli::HeartDialEmotionTypeAnger => "HEART_DIAL_EMOTION_TYPE_ANGER",
            Iclildeepli::HeartDialEmotionTypeHappy => "HEART_DIAL_EMOTION_TYPE_HAPPY",
            Iclildeepli::HeartDialEmotionTypeSad => "HEART_DIAL_EMOTION_TYPE_SAD",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "HEART_DIAL_EMOTION_TYPE_PEACE" => Some(Self::HeartDialEmotionTypePeace),
            "HEART_DIAL_EMOTION_TYPE_ANGER" => Some(Self::HeartDialEmotionTypeAnger),
            "HEART_DIAL_EMOTION_TYPE_HAPPY" => Some(Self::HeartDialEmotionTypeHappy),
            "HEART_DIAL_EMOTION_TYPE_SAD" => Some(Self::HeartDialEmotionTypeSad),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Lnofmmmbfch {
    HeartDialStepTypeMissing = 0,
    HeartDialStepTypeFull = 1,
    HeartDialStepTypeLock = 2,
    HeartDialStepTypeUnlock = 3,
    HeartDialStepTypeNormal = 4,
    HeartDialStepTypeControl = 5,
}
impl Lnofmmmbfch {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Lnofmmmbfch::HeartDialStepTypeMissing => "HEART_DIAL_STEP_TYPE_MISSING",
            Lnofmmmbfch::HeartDialStepTypeFull => "HEART_DIAL_STEP_TYPE_FULL",
            Lnofmmmbfch::HeartDialStepTypeLock => "HEART_DIAL_STEP_TYPE_LOCK",
            Lnofmmmbfch::HeartDialStepTypeUnlock => "HEART_DIAL_STEP_TYPE_UNLOCK",
            Lnofmmmbfch::HeartDialStepTypeNormal => "HEART_DIAL_STEP_TYPE_NORMAL",
            Lnofmmmbfch::HeartDialStepTypeControl => "HEART_DIAL_STEP_TYPE_CONTROL",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "HEART_DIAL_STEP_TYPE_MISSING" => Some(Self::HeartDialStepTypeMissing),
            "HEART_DIAL_STEP_TYPE_FULL" => Some(Self::HeartDialStepTypeFull),
            "HEART_DIAL_STEP_TYPE_LOCK" => Some(Self::HeartDialStepTypeLock),
            "HEART_DIAL_STEP_TYPE_UNLOCK" => Some(Self::HeartDialStepTypeUnlock),
            "HEART_DIAL_STEP_TYPE_NORMAL" => Some(Self::HeartDialStepTypeNormal),
            "HEART_DIAL_STEP_TYPE_CONTROL" => Some(Self::HeartDialStepTypeControl),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Iacaoojfcgh {
    HeartDialUnlockStatusLock = 0,
    HeartDialUnlockStatusUnlockSingle = 1,
    HeartDialUnlockStatusUnlockAll = 2,
}
impl Iacaoojfcgh {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Iacaoojfcgh::HeartDialUnlockStatusLock => "HEART_DIAL_UNLOCK_STATUS_LOCK",
            Iacaoojfcgh::HeartDialUnlockStatusUnlockSingle => {
                "HEART_DIAL_UNLOCK_STATUS_UNLOCK_SINGLE"
            }
            Iacaoojfcgh::HeartDialUnlockStatusUnlockAll => {
                "HEART_DIAL_UNLOCK_STATUS_UNLOCK_ALL"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "HEART_DIAL_UNLOCK_STATUS_LOCK" => Some(Self::HeartDialUnlockStatusLock),
            "HEART_DIAL_UNLOCK_STATUS_UNLOCK_SINGLE" => {
                Some(Self::HeartDialUnlockStatusUnlockSingle)
            }
            "HEART_DIAL_UNLOCK_STATUS_UNLOCK_ALL" => {
                Some(Self::HeartDialUnlockStatusUnlockAll)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Icafhanhhao {
    CmdHeliobusTypeNone = 0,
    CmdHeliobusEnterBattleScRsp = 5816,
    CmdHeliobusStartRaidScRsp = 5885,
    CmdHeliobusInfoChangedScNotify = 5868,
    CmdHeliobusUpgradeLevelCsReq = 5896,
    CmdHeliobusActivityDataCsReq = 5834,
    CmdHeliobusSnsReadCsReq = 5862,
    CmdHeliobusLineupUpdateScNotify = 5863,
    CmdHeliobusSnsCommentScRsp = 5829,
    CmdHeliobusStartRaidCsReq = 5830,
    CmdHeliobusSelectSkillCsReq = 5859,
    CmdHeliobusChallengeUpdateScNotify = 5856,
    CmdHeliobusSnsLikeCsReq = 5819,
    CmdHeliobusSnsPostCsReq = 5802,
    CmdHeliobusSelectSkillScRsp = 5895,
    CmdHeliobusSnsReadScRsp = 5888,
    CmdHeliobusEnterBattleCsReq = 5839,
    CmdHeliobusSnsCommentCsReq = 5886,
    CmdHeliobusUpgradeLevelScRsp = 5806,
    CmdHeliobusSnsPostScRsp = 5809,
    CmdHeliobusUnlockSkillScNotify = 5833,
    CmdHeliobusSnsLikeScRsp = 5843,
    CmdHeliobusActivityDataScRsp = 5848,
    CmdHeliobusSnsUpdateScNotify = 5845,
}
impl Icafhanhhao {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Icafhanhhao::CmdHeliobusTypeNone => "CmdHeliobusTypeNone",
            Icafhanhhao::CmdHeliobusEnterBattleScRsp => "CmdHeliobusEnterBattleScRsp",
            Icafhanhhao::CmdHeliobusStartRaidScRsp => "CmdHeliobusStartRaidScRsp",
            Icafhanhhao::CmdHeliobusInfoChangedScNotify => {
                "CmdHeliobusInfoChangedScNotify"
            }
            Icafhanhhao::CmdHeliobusUpgradeLevelCsReq => "CmdHeliobusUpgradeLevelCsReq",
            Icafhanhhao::CmdHeliobusActivityDataCsReq => "CmdHeliobusActivityDataCsReq",
            Icafhanhhao::CmdHeliobusSnsReadCsReq => "CmdHeliobusSnsReadCsReq",
            Icafhanhhao::CmdHeliobusLineupUpdateScNotify => {
                "CmdHeliobusLineupUpdateScNotify"
            }
            Icafhanhhao::CmdHeliobusSnsCommentScRsp => "CmdHeliobusSnsCommentScRsp",
            Icafhanhhao::CmdHeliobusStartRaidCsReq => "CmdHeliobusStartRaidCsReq",
            Icafhanhhao::CmdHeliobusSelectSkillCsReq => "CmdHeliobusSelectSkillCsReq",
            Icafhanhhao::CmdHeliobusChallengeUpdateScNotify => {
                "CmdHeliobusChallengeUpdateScNotify"
            }
            Icafhanhhao::CmdHeliobusSnsLikeCsReq => "CmdHeliobusSnsLikeCsReq",
            Icafhanhhao::CmdHeliobusSnsPostCsReq => "CmdHeliobusSnsPostCsReq",
            Icafhanhhao::CmdHeliobusSelectSkillScRsp => "CmdHeliobusSelectSkillScRsp",
            Icafhanhhao::CmdHeliobusSnsReadScRsp => "CmdHeliobusSnsReadScRsp",
            Icafhanhhao::CmdHeliobusEnterBattleCsReq => "CmdHeliobusEnterBattleCsReq",
            Icafhanhhao::CmdHeliobusSnsCommentCsReq => "CmdHeliobusSnsCommentCsReq",
            Icafhanhhao::CmdHeliobusUpgradeLevelScRsp => "CmdHeliobusUpgradeLevelScRsp",
            Icafhanhhao::CmdHeliobusSnsPostScRsp => "CmdHeliobusSnsPostScRsp",
            Icafhanhhao::CmdHeliobusUnlockSkillScNotify => {
                "CmdHeliobusUnlockSkillScNotify"
            }
            Icafhanhhao::CmdHeliobusSnsLikeScRsp => "CmdHeliobusSnsLikeScRsp",
            Icafhanhhao::CmdHeliobusActivityDataScRsp => "CmdHeliobusActivityDataScRsp",
            Icafhanhhao::CmdHeliobusSnsUpdateScNotify => "CmdHeliobusSnsUpdateScNotify",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdHeliobusTypeNone" => Some(Self::CmdHeliobusTypeNone),
            "CmdHeliobusEnterBattleScRsp" => Some(Self::CmdHeliobusEnterBattleScRsp),
            "CmdHeliobusStartRaidScRsp" => Some(Self::CmdHeliobusStartRaidScRsp),
            "CmdHeliobusInfoChangedScNotify" => {
                Some(Self::CmdHeliobusInfoChangedScNotify)
            }
            "CmdHeliobusUpgradeLevelCsReq" => Some(Self::CmdHeliobusUpgradeLevelCsReq),
            "CmdHeliobusActivityDataCsReq" => Some(Self::CmdHeliobusActivityDataCsReq),
            "CmdHeliobusSnsReadCsReq" => Some(Self::CmdHeliobusSnsReadCsReq),
            "CmdHeliobusLineupUpdateScNotify" => {
                Some(Self::CmdHeliobusLineupUpdateScNotify)
            }
            "CmdHeliobusSnsCommentScRsp" => Some(Self::CmdHeliobusSnsCommentScRsp),
            "CmdHeliobusStartRaidCsReq" => Some(Self::CmdHeliobusStartRaidCsReq),
            "CmdHeliobusSelectSkillCsReq" => Some(Self::CmdHeliobusSelectSkillCsReq),
            "CmdHeliobusChallengeUpdateScNotify" => {
                Some(Self::CmdHeliobusChallengeUpdateScNotify)
            }
            "CmdHeliobusSnsLikeCsReq" => Some(Self::CmdHeliobusSnsLikeCsReq),
            "CmdHeliobusSnsPostCsReq" => Some(Self::CmdHeliobusSnsPostCsReq),
            "CmdHeliobusSelectSkillScRsp" => Some(Self::CmdHeliobusSelectSkillScRsp),
            "CmdHeliobusSnsReadScRsp" => Some(Self::CmdHeliobusSnsReadScRsp),
            "CmdHeliobusEnterBattleCsReq" => Some(Self::CmdHeliobusEnterBattleCsReq),
            "CmdHeliobusSnsCommentCsReq" => Some(Self::CmdHeliobusSnsCommentCsReq),
            "CmdHeliobusUpgradeLevelScRsp" => Some(Self::CmdHeliobusUpgradeLevelScRsp),
            "CmdHeliobusSnsPostScRsp" => Some(Self::CmdHeliobusSnsPostScRsp),
            "CmdHeliobusUnlockSkillScNotify" => {
                Some(Self::CmdHeliobusUnlockSkillScNotify)
            }
            "CmdHeliobusSnsLikeScRsp" => Some(Self::CmdHeliobusSnsLikeScRsp),
            "CmdHeliobusActivityDataScRsp" => Some(Self::CmdHeliobusActivityDataScRsp),
            "CmdHeliobusSnsUpdateScNotify" => Some(Self::CmdHeliobusSnsUpdateScNotify),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum CmdItemType {
    None = 0,
    CmdComposeItemScRsp = 506,
    CmdComposeLimitNumUpdateNotify = 518,
    CmdLockEquipmentScRsp = 509,
    CmdSellItemCsReq = 537,
    CmdSellItemScRsp = 539,
    CmdRelicRecommendCsReq = 567,
    CmdLockRelicScRsp = 542,
    CmdRankUpEquipmentScRsp = 529,
    CmdExpUpRelicCsReq = 533,
    CmdGetBagScRsp = 548,
    CmdExchangeHcoinCsReq = 530,
    CmdComposeLimitNumCompleteNotify = 561,
    CmdSetTurnFoodSwitchCsReq = 525,
    CmdUseItemScRsp = 543,
    CmdGetMarkItemListCsReq = 524,
    CmdComposeItemCsReq = 596,
    CmdDestroyItemCsReq = 591,
    CmdExchangeHcoinScRsp = 585,
    CmdCancelMarkItemNotify = 554,
    CmdUseItemCsReq = 519,
    CmdLockRelicCsReq = 595,
    CmdSetTurnFoodSwitchScRsp = 600,
    CmdComposeSelectedRelicCsReq = 556,
    CmdExpUpRelicScRsp = 559,
    CmdGetRecyleTimeCsReq = 541,
    CmdDiscardRelicScRsp = 590,
    CmdPromoteEquipmentScRsp = 588,
    CmdGetMarkItemListScRsp = 582,
    CmdMarkItemCsReq = 511,
    CmdRechargeSuccNotify = 516,
    CmdComposeSelectedRelicScRsp = 563,
    CmdMarkItemScRsp = 508,
    CmdSyncTurnFoodNotify = 579,
    CmdPromoteEquipmentCsReq = 562,
    CmdExpUpEquipmentCsReq = 545,
    CmdLockEquipmentCsReq = 502,
    CmdGetRecyleTimeScRsp = 528,
    CmdAddEquipmentScNotify = 501,
    CmdDestroyItemScRsp = 597,
    CmdGeneralVirtualItemDataNotify = 565,
    CmdExpUpEquipmentScRsp = 568,
    CmdGetBagCsReq = 534,
    CmdRankUpEquipmentCsReq = 586,
    CmdDiscardRelicCsReq = 589,
    CmdRelicRecommendScRsp = 592,
}
impl CmdItemType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            CmdItemType::None => "CmdItemTypeNone",
            CmdItemType::CmdComposeItemScRsp => "CmdComposeItemScRsp",
            CmdItemType::CmdComposeLimitNumUpdateNotify => {
                "CmdComposeLimitNumUpdateNotify"
            }
            CmdItemType::CmdLockEquipmentScRsp => "CmdLockEquipmentScRsp",
            CmdItemType::CmdSellItemCsReq => "CmdSellItemCsReq",
            CmdItemType::CmdSellItemScRsp => "CmdSellItemScRsp",
            CmdItemType::CmdRelicRecommendCsReq => "CmdRelicRecommendCsReq",
            CmdItemType::CmdLockRelicScRsp => "CmdLockRelicScRsp",
            CmdItemType::CmdRankUpEquipmentScRsp => "CmdRankUpEquipmentScRsp",
            CmdItemType::CmdExpUpRelicCsReq => "CmdExpUpRelicCsReq",
            CmdItemType::CmdGetBagScRsp => "CmdGetBagScRsp",
            CmdItemType::CmdExchangeHcoinCsReq => "CmdExchangeHcoinCsReq",
            CmdItemType::CmdComposeLimitNumCompleteNotify => {
                "CmdComposeLimitNumCompleteNotify"
            }
            CmdItemType::CmdSetTurnFoodSwitchCsReq => "CmdSetTurnFoodSwitchCsReq",
            CmdItemType::CmdUseItemScRsp => "CmdUseItemScRsp",
            CmdItemType::CmdGetMarkItemListCsReq => "CmdGetMarkItemListCsReq",
            CmdItemType::CmdComposeItemCsReq => "CmdComposeItemCsReq",
            CmdItemType::CmdDestroyItemCsReq => "CmdDestroyItemCsReq",
            CmdItemType::CmdExchangeHcoinScRsp => "CmdExchangeHcoinScRsp",
            CmdItemType::CmdCancelMarkItemNotify => "CmdCancelMarkItemNotify",
            CmdItemType::CmdUseItemCsReq => "CmdUseItemCsReq",
            CmdItemType::CmdLockRelicCsReq => "CmdLockRelicCsReq",
            CmdItemType::CmdSetTurnFoodSwitchScRsp => "CmdSetTurnFoodSwitchScRsp",
            CmdItemType::CmdComposeSelectedRelicCsReq => "CmdComposeSelectedRelicCsReq",
            CmdItemType::CmdExpUpRelicScRsp => "CmdExpUpRelicScRsp",
            CmdItemType::CmdGetRecyleTimeCsReq => "CmdGetRecyleTimeCsReq",
            CmdItemType::CmdDiscardRelicScRsp => "CmdDiscardRelicScRsp",
            CmdItemType::CmdPromoteEquipmentScRsp => "CmdPromoteEquipmentScRsp",
            CmdItemType::CmdGetMarkItemListScRsp => "CmdGetMarkItemListScRsp",
            CmdItemType::CmdMarkItemCsReq => "CmdMarkItemCsReq",
            CmdItemType::CmdRechargeSuccNotify => "CmdRechargeSuccNotify",
            CmdItemType::CmdComposeSelectedRelicScRsp => "CmdComposeSelectedRelicScRsp",
            CmdItemType::CmdMarkItemScRsp => "CmdMarkItemScRsp",
            CmdItemType::CmdSyncTurnFoodNotify => "CmdSyncTurnFoodNotify",
            CmdItemType::CmdPromoteEquipmentCsReq => "CmdPromoteEquipmentCsReq",
            CmdItemType::CmdExpUpEquipmentCsReq => "CmdExpUpEquipmentCsReq",
            CmdItemType::CmdLockEquipmentCsReq => "CmdLockEquipmentCsReq",
            CmdItemType::CmdGetRecyleTimeScRsp => "CmdGetRecyleTimeScRsp",
            CmdItemType::CmdAddEquipmentScNotify => "CmdAddEquipmentScNotify",
            CmdItemType::CmdDestroyItemScRsp => "CmdDestroyItemScRsp",
            CmdItemType::CmdGeneralVirtualItemDataNotify => {
                "CmdGeneralVirtualItemDataNotify"
            }
            CmdItemType::CmdExpUpEquipmentScRsp => "CmdExpUpEquipmentScRsp",
            CmdItemType::CmdGetBagCsReq => "CmdGetBagCsReq",
            CmdItemType::CmdRankUpEquipmentCsReq => "CmdRankUpEquipmentCsReq",
            CmdItemType::CmdDiscardRelicCsReq => "CmdDiscardRelicCsReq",
            CmdItemType::CmdRelicRecommendScRsp => "CmdRelicRecommendScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdItemTypeNone" => Some(Self::None),
            "CmdComposeItemScRsp" => Some(Self::CmdComposeItemScRsp),
            "CmdComposeLimitNumUpdateNotify" => {
                Some(Self::CmdComposeLimitNumUpdateNotify)
            }
            "CmdLockEquipmentScRsp" => Some(Self::CmdLockEquipmentScRsp),
            "CmdSellItemCsReq" => Some(Self::CmdSellItemCsReq),
            "CmdSellItemScRsp" => Some(Self::CmdSellItemScRsp),
            "CmdRelicRecommendCsReq" => Some(Self::CmdRelicRecommendCsReq),
            "CmdLockRelicScRsp" => Some(Self::CmdLockRelicScRsp),
            "CmdRankUpEquipmentScRsp" => Some(Self::CmdRankUpEquipmentScRsp),
            "CmdExpUpRelicCsReq" => Some(Self::CmdExpUpRelicCsReq),
            "CmdGetBagScRsp" => Some(Self::CmdGetBagScRsp),
            "CmdExchangeHcoinCsReq" => Some(Self::CmdExchangeHcoinCsReq),
            "CmdComposeLimitNumCompleteNotify" => {
                Some(Self::CmdComposeLimitNumCompleteNotify)
            }
            "CmdSetTurnFoodSwitchCsReq" => Some(Self::CmdSetTurnFoodSwitchCsReq),
            "CmdUseItemScRsp" => Some(Self::CmdUseItemScRsp),
            "CmdGetMarkItemListCsReq" => Some(Self::CmdGetMarkItemListCsReq),
            "CmdComposeItemCsReq" => Some(Self::CmdComposeItemCsReq),
            "CmdDestroyItemCsReq" => Some(Self::CmdDestroyItemCsReq),
            "CmdExchangeHcoinScRsp" => Some(Self::CmdExchangeHcoinScRsp),
            "CmdCancelMarkItemNotify" => Some(Self::CmdCancelMarkItemNotify),
            "CmdUseItemCsReq" => Some(Self::CmdUseItemCsReq),
            "CmdLockRelicCsReq" => Some(Self::CmdLockRelicCsReq),
            "CmdSetTurnFoodSwitchScRsp" => Some(Self::CmdSetTurnFoodSwitchScRsp),
            "CmdComposeSelectedRelicCsReq" => Some(Self::CmdComposeSelectedRelicCsReq),
            "CmdExpUpRelicScRsp" => Some(Self::CmdExpUpRelicScRsp),
            "CmdGetRecyleTimeCsReq" => Some(Self::CmdGetRecyleTimeCsReq),
            "CmdDiscardRelicScRsp" => Some(Self::CmdDiscardRelicScRsp),
            "CmdPromoteEquipmentScRsp" => Some(Self::CmdPromoteEquipmentScRsp),
            "CmdGetMarkItemListScRsp" => Some(Self::CmdGetMarkItemListScRsp),
            "CmdMarkItemCsReq" => Some(Self::CmdMarkItemCsReq),
            "CmdRechargeSuccNotify" => Some(Self::CmdRechargeSuccNotify),
            "CmdComposeSelectedRelicScRsp" => Some(Self::CmdComposeSelectedRelicScRsp),
            "CmdMarkItemScRsp" => Some(Self::CmdMarkItemScRsp),
            "CmdSyncTurnFoodNotify" => Some(Self::CmdSyncTurnFoodNotify),
            "CmdPromoteEquipmentCsReq" => Some(Self::CmdPromoteEquipmentCsReq),
            "CmdExpUpEquipmentCsReq" => Some(Self::CmdExpUpEquipmentCsReq),
            "CmdLockEquipmentCsReq" => Some(Self::CmdLockEquipmentCsReq),
            "CmdGetRecyleTimeScRsp" => Some(Self::CmdGetRecyleTimeScRsp),
            "CmdAddEquipmentScNotify" => Some(Self::CmdAddEquipmentScNotify),
            "CmdDestroyItemScRsp" => Some(Self::CmdDestroyItemScRsp),
            "CmdGeneralVirtualItemDataNotify" => {
                Some(Self::CmdGeneralVirtualItemDataNotify)
            }
            "CmdExpUpEquipmentScRsp" => Some(Self::CmdExpUpEquipmentScRsp),
            "CmdGetBagCsReq" => Some(Self::CmdGetBagCsReq),
            "CmdRankUpEquipmentCsReq" => Some(Self::CmdRankUpEquipmentCsReq),
            "CmdDiscardRelicCsReq" => Some(Self::CmdDiscardRelicCsReq),
            "CmdRelicRecommendScRsp" => Some(Self::CmdRelicRecommendScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum TurnFoodSwitchType {
    TurnFoodSwitchNone = 0,
    TurnFoodSwitchAttack = 1,
    TurnFoodSwitchDefine = 2,
}
impl TurnFoodSwitchType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            TurnFoodSwitchType::TurnFoodSwitchNone => "TURN_FOOD_SWITCH_NONE",
            TurnFoodSwitchType::TurnFoodSwitchAttack => "TURN_FOOD_SWITCH_ATTACK",
            TurnFoodSwitchType::TurnFoodSwitchDefine => "TURN_FOOD_SWITCH_DEFINE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "TURN_FOOD_SWITCH_NONE" => Some(Self::TurnFoodSwitchNone),
            "TURN_FOOD_SWITCH_ATTACK" => Some(Self::TurnFoodSwitchAttack),
            "TURN_FOOD_SWITCH_DEFINE" => Some(Self::TurnFoodSwitchDefine),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Emhbkpkpjpa {
    CmdJukeboxTypeNone = 0,
    CmdTrialBackGroundMusicScRsp = 3143,
    CmdPlayBackGroundMusicCsReq = 3162,
    CmdUnlockBackGroundMusicScRsp = 3109,
    CmdGetJukeboxDataCsReq = 3134,
    CmdGetJukeboxDataScRsp = 3148,
    CmdUnlockBackGroundMusicCsReq = 3102,
    CmdPlayBackGroundMusicScRsp = 3188,
    CmdTrialBackGroundMusicCsReq = 3119,
}
impl Emhbkpkpjpa {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Emhbkpkpjpa::CmdJukeboxTypeNone => "CmdJukeboxTypeNone",
            Emhbkpkpjpa::CmdTrialBackGroundMusicScRsp => "CmdTrialBackGroundMusicScRsp",
            Emhbkpkpjpa::CmdPlayBackGroundMusicCsReq => "CmdPlayBackGroundMusicCsReq",
            Emhbkpkpjpa::CmdUnlockBackGroundMusicScRsp => "CmdUnlockBackGroundMusicScRsp",
            Emhbkpkpjpa::CmdGetJukeboxDataCsReq => "CmdGetJukeboxDataCsReq",
            Emhbkpkpjpa::CmdGetJukeboxDataScRsp => "CmdGetJukeboxDataScRsp",
            Emhbkpkpjpa::CmdUnlockBackGroundMusicCsReq => "CmdUnlockBackGroundMusicCsReq",
            Emhbkpkpjpa::CmdPlayBackGroundMusicScRsp => "CmdPlayBackGroundMusicScRsp",
            Emhbkpkpjpa::CmdTrialBackGroundMusicCsReq => "CmdTrialBackGroundMusicCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdJukeboxTypeNone" => Some(Self::CmdJukeboxTypeNone),
            "CmdTrialBackGroundMusicScRsp" => Some(Self::CmdTrialBackGroundMusicScRsp),
            "CmdPlayBackGroundMusicCsReq" => Some(Self::CmdPlayBackGroundMusicCsReq),
            "CmdUnlockBackGroundMusicScRsp" => Some(Self::CmdUnlockBackGroundMusicScRsp),
            "CmdGetJukeboxDataCsReq" => Some(Self::CmdGetJukeboxDataCsReq),
            "CmdGetJukeboxDataScRsp" => Some(Self::CmdGetJukeboxDataScRsp),
            "CmdUnlockBackGroundMusicCsReq" => Some(Self::CmdUnlockBackGroundMusicCsReq),
            "CmdPlayBackGroundMusicScRsp" => Some(Self::CmdPlayBackGroundMusicScRsp),
            "CmdTrialBackGroundMusicCsReq" => Some(Self::CmdTrialBackGroundMusicCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Bnnoennogkb {
    CmdLineupTypeNone = 0,
    CmdGetCurLineupDataScRsp = 788,
    CmdGetAllLineupDataCsReq = 739,
    CmdExtraLineupDestroyNotify = 763,
    CmdGetLineupAvatarDataCsReq = 768,
    CmdSwitchLineupIndexScRsp = 795,
    CmdJoinLineupCsReq = 702,
    CmdGetAllLineupDataScRsp = 716,
    CmdSetLineupNameCsReq = 742,
    CmdChangeLineupLeaderScRsp = 733,
    CmdChangeLineupLeaderCsReq = 706,
    CmdReplaceLineupCsReq = 785,
    CmdSwapLineupCsReq = 786,
    CmdQuitLineupScRsp = 743,
    CmdGetLineupAvatarDataScRsp = 796,
    CmdReplaceLineupScRsp = 756,
    CmdGetStageLineupCsReq = 734,
    CmdQuitLineupCsReq = 719,
    CmdSetLineupNameScRsp = 737,
    CmdSwitchLineupIndexCsReq = 759,
    CmdGetCurLineupDataCsReq = 762,
    CmdVirtualLineupDestroyNotify = 730,
    CmdSyncLineupNotify = 745,
    CmdGetStageLineupScRsp = 748,
    CmdSwapLineupScRsp = 729,
    CmdJoinLineupScRsp = 709,
}
impl Bnnoennogkb {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Bnnoennogkb::CmdLineupTypeNone => "CmdLineupTypeNone",
            Bnnoennogkb::CmdGetCurLineupDataScRsp => "CmdGetCurLineupDataScRsp",
            Bnnoennogkb::CmdGetAllLineupDataCsReq => "CmdGetAllLineupDataCsReq",
            Bnnoennogkb::CmdExtraLineupDestroyNotify => "CmdExtraLineupDestroyNotify",
            Bnnoennogkb::CmdGetLineupAvatarDataCsReq => "CmdGetLineupAvatarDataCsReq",
            Bnnoennogkb::CmdSwitchLineupIndexScRsp => "CmdSwitchLineupIndexScRsp",
            Bnnoennogkb::CmdJoinLineupCsReq => "CmdJoinLineupCsReq",
            Bnnoennogkb::CmdGetAllLineupDataScRsp => "CmdGetAllLineupDataScRsp",
            Bnnoennogkb::CmdSetLineupNameCsReq => "CmdSetLineupNameCsReq",
            Bnnoennogkb::CmdChangeLineupLeaderScRsp => "CmdChangeLineupLeaderScRsp",
            Bnnoennogkb::CmdChangeLineupLeaderCsReq => "CmdChangeLineupLeaderCsReq",
            Bnnoennogkb::CmdReplaceLineupCsReq => "CmdReplaceLineupCsReq",
            Bnnoennogkb::CmdSwapLineupCsReq => "CmdSwapLineupCsReq",
            Bnnoennogkb::CmdQuitLineupScRsp => "CmdQuitLineupScRsp",
            Bnnoennogkb::CmdGetLineupAvatarDataScRsp => "CmdGetLineupAvatarDataScRsp",
            Bnnoennogkb::CmdReplaceLineupScRsp => "CmdReplaceLineupScRsp",
            Bnnoennogkb::CmdGetStageLineupCsReq => "CmdGetStageLineupCsReq",
            Bnnoennogkb::CmdQuitLineupCsReq => "CmdQuitLineupCsReq",
            Bnnoennogkb::CmdSetLineupNameScRsp => "CmdSetLineupNameScRsp",
            Bnnoennogkb::CmdSwitchLineupIndexCsReq => "CmdSwitchLineupIndexCsReq",
            Bnnoennogkb::CmdGetCurLineupDataCsReq => "CmdGetCurLineupDataCsReq",
            Bnnoennogkb::CmdVirtualLineupDestroyNotify => "CmdVirtualLineupDestroyNotify",
            Bnnoennogkb::CmdSyncLineupNotify => "CmdSyncLineupNotify",
            Bnnoennogkb::CmdGetStageLineupScRsp => "CmdGetStageLineupScRsp",
            Bnnoennogkb::CmdSwapLineupScRsp => "CmdSwapLineupScRsp",
            Bnnoennogkb::CmdJoinLineupScRsp => "CmdJoinLineupScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdLineupTypeNone" => Some(Self::CmdLineupTypeNone),
            "CmdGetCurLineupDataScRsp" => Some(Self::CmdGetCurLineupDataScRsp),
            "CmdGetAllLineupDataCsReq" => Some(Self::CmdGetAllLineupDataCsReq),
            "CmdExtraLineupDestroyNotify" => Some(Self::CmdExtraLineupDestroyNotify),
            "CmdGetLineupAvatarDataCsReq" => Some(Self::CmdGetLineupAvatarDataCsReq),
            "CmdSwitchLineupIndexScRsp" => Some(Self::CmdSwitchLineupIndexScRsp),
            "CmdJoinLineupCsReq" => Some(Self::CmdJoinLineupCsReq),
            "CmdGetAllLineupDataScRsp" => Some(Self::CmdGetAllLineupDataScRsp),
            "CmdSetLineupNameCsReq" => Some(Self::CmdSetLineupNameCsReq),
            "CmdChangeLineupLeaderScRsp" => Some(Self::CmdChangeLineupLeaderScRsp),
            "CmdChangeLineupLeaderCsReq" => Some(Self::CmdChangeLineupLeaderCsReq),
            "CmdReplaceLineupCsReq" => Some(Self::CmdReplaceLineupCsReq),
            "CmdSwapLineupCsReq" => Some(Self::CmdSwapLineupCsReq),
            "CmdQuitLineupScRsp" => Some(Self::CmdQuitLineupScRsp),
            "CmdGetLineupAvatarDataScRsp" => Some(Self::CmdGetLineupAvatarDataScRsp),
            "CmdReplaceLineupScRsp" => Some(Self::CmdReplaceLineupScRsp),
            "CmdGetStageLineupCsReq" => Some(Self::CmdGetStageLineupCsReq),
            "CmdQuitLineupCsReq" => Some(Self::CmdQuitLineupCsReq),
            "CmdSetLineupNameScRsp" => Some(Self::CmdSetLineupNameScRsp),
            "CmdSwitchLineupIndexCsReq" => Some(Self::CmdSwitchLineupIndexCsReq),
            "CmdGetCurLineupDataCsReq" => Some(Self::CmdGetCurLineupDataCsReq),
            "CmdVirtualLineupDestroyNotify" => Some(Self::CmdVirtualLineupDestroyNotify),
            "CmdSyncLineupNotify" => Some(Self::CmdSyncLineupNotify),
            "CmdGetStageLineupScRsp" => Some(Self::CmdGetStageLineupScRsp),
            "CmdSwapLineupScRsp" => Some(Self::CmdSwapLineupScRsp),
            "CmdJoinLineupScRsp" => Some(Self::CmdJoinLineupScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum LineupType {
    None = 0,
    Preset = 1,
    Virtual = 2,
    Extra = 3,
    StoryLine = 4,
}
impl LineupType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            LineupType::None => "LINEUP_TYPE_NONE",
            LineupType::Preset => "LINEUP_TYPE_PRESET",
            LineupType::Virtual => "LINEUP_TYPE_VIRTUAL",
            LineupType::Extra => "LINEUP_TYPE_EXTRA",
            LineupType::StoryLine => "LINEUP_TYPE_STORY_LINE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "LINEUP_TYPE_NONE" => Some(Self::None),
            "LINEUP_TYPE_PRESET" => Some(Self::Preset),
            "LINEUP_TYPE_VIRTUAL" => Some(Self::Virtual),
            "LINEUP_TYPE_EXTRA" => Some(Self::Extra),
            "LINEUP_TYPE_STORY_LINE" => Some(Self::StoryLine),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ExtraLineupType {
    LineupNone = 0,
    LineupChallenge = 1,
    LineupRogue = 2,
    LineupChallenge2 = 3,
    LineupChallenge3 = 4,
    LineupRogueChallenge = 5,
    LineupStageTrial = 6,
    LineupRogueTrial = 7,
    LineupActivity = 8,
    LineupBoxingClub = 9,
    LineupTreasureDungeon = 11,
    LineupChessRogue = 12,
    LineupHeliobus = 13,
}
impl ExtraLineupType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            ExtraLineupType::LineupNone => "LINEUP_NONE",
            ExtraLineupType::LineupChallenge => "LINEUP_CHALLENGE",
            ExtraLineupType::LineupRogue => "LINEUP_ROGUE",
            ExtraLineupType::LineupChallenge2 => "LINEUP_CHALLENGE_2",
            ExtraLineupType::LineupChallenge3 => "LINEUP_CHALLENGE_3",
            ExtraLineupType::LineupRogueChallenge => "LINEUP_ROGUE_CHALLENGE",
            ExtraLineupType::LineupStageTrial => "LINEUP_STAGE_TRIAL",
            ExtraLineupType::LineupRogueTrial => "LINEUP_ROGUE_TRIAL",
            ExtraLineupType::LineupActivity => "LINEUP_ACTIVITY",
            ExtraLineupType::LineupBoxingClub => "LINEUP_BOXING_CLUB",
            ExtraLineupType::LineupTreasureDungeon => "LINEUP_TREASURE_DUNGEON",
            ExtraLineupType::LineupChessRogue => "LINEUP_CHESS_ROGUE",
            ExtraLineupType::LineupHeliobus => "LINEUP_HELIOBUS",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "LINEUP_NONE" => Some(Self::LineupNone),
            "LINEUP_CHALLENGE" => Some(Self::LineupChallenge),
            "LINEUP_ROGUE" => Some(Self::LineupRogue),
            "LINEUP_CHALLENGE_2" => Some(Self::LineupChallenge2),
            "LINEUP_CHALLENGE_3" => Some(Self::LineupChallenge3),
            "LINEUP_ROGUE_CHALLENGE" => Some(Self::LineupRogueChallenge),
            "LINEUP_STAGE_TRIAL" => Some(Self::LineupStageTrial),
            "LINEUP_ROGUE_TRIAL" => Some(Self::LineupRogueTrial),
            "LINEUP_ACTIVITY" => Some(Self::LineupActivity),
            "LINEUP_BOXING_CLUB" => Some(Self::LineupBoxingClub),
            "LINEUP_TREASURE_DUNGEON" => Some(Self::LineupTreasureDungeon),
            "LINEUP_CHESS_ROGUE" => Some(Self::LineupChessRogue),
            "LINEUP_HELIOBUS" => Some(Self::LineupHeliobus),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum SyncLineupReason {
    SyncReasonNone = 0,
    SyncReasonMpAdd = 1,
    SyncReasonMpAddPropHit = 2,
    SyncReasonHpAdd = 3,
    SyncReasonHpAddPropHit = 4,
}
impl SyncLineupReason {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            SyncLineupReason::SyncReasonNone => "SYNC_REASON_NONE",
            SyncLineupReason::SyncReasonMpAdd => "SYNC_REASON_MP_ADD",
            SyncLineupReason::SyncReasonMpAddPropHit => "SYNC_REASON_MP_ADD_PROP_HIT",
            SyncLineupReason::SyncReasonHpAdd => "SYNC_REASON_HP_ADD",
            SyncLineupReason::SyncReasonHpAddPropHit => "SYNC_REASON_HP_ADD_PROP_HIT",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "SYNC_REASON_NONE" => Some(Self::SyncReasonNone),
            "SYNC_REASON_MP_ADD" => Some(Self::SyncReasonMpAdd),
            "SYNC_REASON_MP_ADD_PROP_HIT" => Some(Self::SyncReasonMpAddPropHit),
            "SYNC_REASON_HP_ADD" => Some(Self::SyncReasonHpAdd),
            "SYNC_REASON_HP_ADD_PROP_HIT" => Some(Self::SyncReasonHpAddPropHit),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum CmdMailType {
    None = 0,
    CmdMarkReadMailScRsp = 888,
    CmdTakeMailAttachmentScRsp = 843,
    CmdDelMailScRsp = 809,
    CmdTakeMailAttachmentCsReq = 819,
    CmdNewMailScNotify = 886,
    CmdMarkReadMailCsReq = 862,
    CmdGetMailCsReq = 834,
    CmdGetMailScRsp = 848,
    CmdDelMailCsReq = 802,
}
impl CmdMailType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            CmdMailType::None => "CmdMailTypeNone",
            CmdMailType::CmdMarkReadMailScRsp => "CmdMarkReadMailScRsp",
            CmdMailType::CmdTakeMailAttachmentScRsp => "CmdTakeMailAttachmentScRsp",
            CmdMailType::CmdDelMailScRsp => "CmdDelMailScRsp",
            CmdMailType::CmdTakeMailAttachmentCsReq => "CmdTakeMailAttachmentCsReq",
            CmdMailType::CmdNewMailScNotify => "CmdNewMailScNotify",
            CmdMailType::CmdMarkReadMailCsReq => "CmdMarkReadMailCsReq",
            CmdMailType::CmdGetMailCsReq => "CmdGetMailCsReq",
            CmdMailType::CmdGetMailScRsp => "CmdGetMailScRsp",
            CmdMailType::CmdDelMailCsReq => "CmdDelMailCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdMailTypeNone" => Some(Self::None),
            "CmdMarkReadMailScRsp" => Some(Self::CmdMarkReadMailScRsp),
            "CmdTakeMailAttachmentScRsp" => Some(Self::CmdTakeMailAttachmentScRsp),
            "CmdDelMailScRsp" => Some(Self::CmdDelMailScRsp),
            "CmdTakeMailAttachmentCsReq" => Some(Self::CmdTakeMailAttachmentCsReq),
            "CmdNewMailScNotify" => Some(Self::CmdNewMailScNotify),
            "CmdMarkReadMailCsReq" => Some(Self::CmdMarkReadMailCsReq),
            "CmdGetMailCsReq" => Some(Self::CmdGetMailCsReq),
            "CmdGetMailScRsp" => Some(Self::CmdGetMailScRsp),
            "CmdDelMailCsReq" => Some(Self::CmdDelMailCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum MailType {
    Normal = 0,
    Star = 1,
}
impl MailType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            MailType::Normal => "MAIL_TYPE_NORMAL",
            MailType::Star => "MAIL_TYPE_STAR",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "MAIL_TYPE_NORMAL" => Some(Self::Normal),
            "MAIL_TYPE_STAR" => Some(Self::Star),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Cjlokggbkba {
    CmdMapRotationTypeNone = 0,
    CmdGetMapRotationDataCsReq = 6845,
    CmdInteractChargerScRsp = 6888,
    CmdResetMapRotationRegionScRsp = 6806,
    CmdUpdateMapRotationDataScNotify = 6895,
    CmdRemoveRotaterScRsp = 6837,
    CmdGetMapRotationDataScRsp = 6868,
    CmdLeaveMapRotationRegionCsReq = 6886,
    CmdRotateMapScRsp = 6843,
    CmdResetMapRotationRegionCsReq = 6896,
    CmdRotateMapCsReq = 6819,
    CmdUpdateEnergyScNotify = 6859,
    CmdRemoveRotaterCsReq = 6842,
    CmdEnterMapRotationRegionCsReq = 6834,
    CmdLeaveMapRotationRegionScNotify = 6833,
    CmdUpdateRotaterScNotify = 6839,
    CmdInteractChargerCsReq = 6862,
    CmdLeaveMapRotationRegionScRsp = 6829,
    CmdEnterMapRotationRegionScRsp = 6848,
    CmdDeployRotaterCsReq = 6802,
    CmdDeployRotaterScRsp = 6809,
}
impl Cjlokggbkba {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Cjlokggbkba::CmdMapRotationTypeNone => "CmdMapRotationTypeNone",
            Cjlokggbkba::CmdGetMapRotationDataCsReq => "CmdGetMapRotationDataCsReq",
            Cjlokggbkba::CmdInteractChargerScRsp => "CmdInteractChargerScRsp",
            Cjlokggbkba::CmdResetMapRotationRegionScRsp => {
                "CmdResetMapRotationRegionScRsp"
            }
            Cjlokggbkba::CmdUpdateMapRotationDataScNotify => {
                "CmdUpdateMapRotationDataScNotify"
            }
            Cjlokggbkba::CmdRemoveRotaterScRsp => "CmdRemoveRotaterScRsp",
            Cjlokggbkba::CmdGetMapRotationDataScRsp => "CmdGetMapRotationDataScRsp",
            Cjlokggbkba::CmdLeaveMapRotationRegionCsReq => {
                "CmdLeaveMapRotationRegionCsReq"
            }
            Cjlokggbkba::CmdRotateMapScRsp => "CmdRotateMapScRsp",
            Cjlokggbkba::CmdResetMapRotationRegionCsReq => {
                "CmdResetMapRotationRegionCsReq"
            }
            Cjlokggbkba::CmdRotateMapCsReq => "CmdRotateMapCsReq",
            Cjlokggbkba::CmdUpdateEnergyScNotify => "CmdUpdateEnergyScNotify",
            Cjlokggbkba::CmdRemoveRotaterCsReq => "CmdRemoveRotaterCsReq",
            Cjlokggbkba::CmdEnterMapRotationRegionCsReq => {
                "CmdEnterMapRotationRegionCsReq"
            }
            Cjlokggbkba::CmdLeaveMapRotationRegionScNotify => {
                "CmdLeaveMapRotationRegionScNotify"
            }
            Cjlokggbkba::CmdUpdateRotaterScNotify => "CmdUpdateRotaterScNotify",
            Cjlokggbkba::CmdInteractChargerCsReq => "CmdInteractChargerCsReq",
            Cjlokggbkba::CmdLeaveMapRotationRegionScRsp => {
                "CmdLeaveMapRotationRegionScRsp"
            }
            Cjlokggbkba::CmdEnterMapRotationRegionScRsp => {
                "CmdEnterMapRotationRegionScRsp"
            }
            Cjlokggbkba::CmdDeployRotaterCsReq => "CmdDeployRotaterCsReq",
            Cjlokggbkba::CmdDeployRotaterScRsp => "CmdDeployRotaterScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdMapRotationTypeNone" => Some(Self::CmdMapRotationTypeNone),
            "CmdGetMapRotationDataCsReq" => Some(Self::CmdGetMapRotationDataCsReq),
            "CmdInteractChargerScRsp" => Some(Self::CmdInteractChargerScRsp),
            "CmdResetMapRotationRegionScRsp" => {
                Some(Self::CmdResetMapRotationRegionScRsp)
            }
            "CmdUpdateMapRotationDataScNotify" => {
                Some(Self::CmdUpdateMapRotationDataScNotify)
            }
            "CmdRemoveRotaterScRsp" => Some(Self::CmdRemoveRotaterScRsp),
            "CmdGetMapRotationDataScRsp" => Some(Self::CmdGetMapRotationDataScRsp),
            "CmdLeaveMapRotationRegionCsReq" => {
                Some(Self::CmdLeaveMapRotationRegionCsReq)
            }
            "CmdRotateMapScRsp" => Some(Self::CmdRotateMapScRsp),
            "CmdResetMapRotationRegionCsReq" => {
                Some(Self::CmdResetMapRotationRegionCsReq)
            }
            "CmdRotateMapCsReq" => Some(Self::CmdRotateMapCsReq),
            "CmdUpdateEnergyScNotify" => Some(Self::CmdUpdateEnergyScNotify),
            "CmdRemoveRotaterCsReq" => Some(Self::CmdRemoveRotaterCsReq),
            "CmdEnterMapRotationRegionCsReq" => {
                Some(Self::CmdEnterMapRotationRegionCsReq)
            }
            "CmdLeaveMapRotationRegionScNotify" => {
                Some(Self::CmdLeaveMapRotationRegionScNotify)
            }
            "CmdUpdateRotaterScNotify" => Some(Self::CmdUpdateRotaterScNotify),
            "CmdInteractChargerCsReq" => Some(Self::CmdInteractChargerCsReq),
            "CmdLeaveMapRotationRegionScRsp" => {
                Some(Self::CmdLeaveMapRotationRegionScRsp)
            }
            "CmdEnterMapRotationRegionScRsp" => {
                Some(Self::CmdEnterMapRotationRegionScRsp)
            }
            "CmdDeployRotaterCsReq" => Some(Self::CmdDeployRotaterCsReq),
            "CmdDeployRotaterScRsp" => Some(Self::CmdDeployRotaterScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Gdjpnkniijf {
    CmdMessageTypeNone = 0,
    CmdFinishSectionIdScRsp = 2743,
    CmdFinishPerformSectionIdCsReq = 2786,
    CmdGetNpcMessageGroupCsReq = 2734,
    CmdFinishPerformSectionIdScRsp = 2729,
    CmdGetNpcStatusCsReq = 2762,
    CmdFinishItemIdCsReq = 2702,
    CmdGetNpcStatusScRsp = 2788,
    CmdFinishSectionIdCsReq = 2719,
    CmdFinishItemIdScRsp = 2709,
    CmdGetNpcMessageGroupScRsp = 2748,
}
impl Gdjpnkniijf {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Gdjpnkniijf::CmdMessageTypeNone => "CmdMessageTypeNone",
            Gdjpnkniijf::CmdFinishSectionIdScRsp => "CmdFinishSectionIdScRsp",
            Gdjpnkniijf::CmdFinishPerformSectionIdCsReq => {
                "CmdFinishPerformSectionIdCsReq"
            }
            Gdjpnkniijf::CmdGetNpcMessageGroupCsReq => "CmdGetNpcMessageGroupCsReq",
            Gdjpnkniijf::CmdFinishPerformSectionIdScRsp => {
                "CmdFinishPerformSectionIdScRsp"
            }
            Gdjpnkniijf::CmdGetNpcStatusCsReq => "CmdGetNpcStatusCsReq",
            Gdjpnkniijf::CmdFinishItemIdCsReq => "CmdFinishItemIdCsReq",
            Gdjpnkniijf::CmdGetNpcStatusScRsp => "CmdGetNpcStatusScRsp",
            Gdjpnkniijf::CmdFinishSectionIdCsReq => "CmdFinishSectionIdCsReq",
            Gdjpnkniijf::CmdFinishItemIdScRsp => "CmdFinishItemIdScRsp",
            Gdjpnkniijf::CmdGetNpcMessageGroupScRsp => "CmdGetNpcMessageGroupScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdMessageTypeNone" => Some(Self::CmdMessageTypeNone),
            "CmdFinishSectionIdScRsp" => Some(Self::CmdFinishSectionIdScRsp),
            "CmdFinishPerformSectionIdCsReq" => {
                Some(Self::CmdFinishPerformSectionIdCsReq)
            }
            "CmdGetNpcMessageGroupCsReq" => Some(Self::CmdGetNpcMessageGroupCsReq),
            "CmdFinishPerformSectionIdScRsp" => {
                Some(Self::CmdFinishPerformSectionIdScRsp)
            }
            "CmdGetNpcStatusCsReq" => Some(Self::CmdGetNpcStatusCsReq),
            "CmdFinishItemIdCsReq" => Some(Self::CmdFinishItemIdCsReq),
            "CmdGetNpcStatusScRsp" => Some(Self::CmdGetNpcStatusScRsp),
            "CmdFinishSectionIdCsReq" => Some(Self::CmdFinishSectionIdCsReq),
            "CmdFinishItemIdScRsp" => Some(Self::CmdFinishItemIdScRsp),
            "CmdGetNpcMessageGroupScRsp" => Some(Self::CmdGetNpcMessageGroupScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mbnnmfkffbo {
    CmdMiscModuleTypeNone = 0,
    CmdCancelCacheNotifyCsReq = 4186,
    CmdGetMovieRacingDataScRsp = 4130,
    CmdTakePictureScRsp = 4109,
    CmdTriggerVoiceScRsp = 4106,
    CmdUpdateMovieRacingDataScRsp = 4156,
    CmdTriggerVoiceCsReq = 4196,
    CmdSecurityReportCsReq = 4145,
    CmdSubmitOrigamiItemCsReq = 4133,
    CmdTakePictureCsReq = 4102,
    CmdUpdateMovieRacingDataCsReq = 4185,
    CmdGetMovieRacingDataCsReq = 4116,
    CmdGetGunPlayDataCsReq = 4163,
    CmdGetShareDataScRsp = 4188,
    CmdShareScRsp = 4148,
    CmdUpdateGunPlayDataCsReq = 4141,
    CmdShareCsReq = 4134,
    CmdGetShareDataCsReq = 4162,
    CmdCancelCacheNotifyScRsp = 4129,
    CmdUpdateGunPlayDataScRsp = 4128,
    CmdSecurityReportScRsp = 4168,
    CmdGetGunPlayDataScRsp = 4101,
    CmdSubmitOrigamiItemScRsp = 4159,
}
impl Mbnnmfkffbo {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mbnnmfkffbo::CmdMiscModuleTypeNone => "CmdMiscModuleTypeNone",
            Mbnnmfkffbo::CmdCancelCacheNotifyCsReq => "CmdCancelCacheNotifyCsReq",
            Mbnnmfkffbo::CmdGetMovieRacingDataScRsp => "CmdGetMovieRacingDataScRsp",
            Mbnnmfkffbo::CmdTakePictureScRsp => "CmdTakePictureScRsp",
            Mbnnmfkffbo::CmdTriggerVoiceScRsp => "CmdTriggerVoiceScRsp",
            Mbnnmfkffbo::CmdUpdateMovieRacingDataScRsp => "CmdUpdateMovieRacingDataScRsp",
            Mbnnmfkffbo::CmdTriggerVoiceCsReq => "CmdTriggerVoiceCsReq",
            Mbnnmfkffbo::CmdSecurityReportCsReq => "CmdSecurityReportCsReq",
            Mbnnmfkffbo::CmdSubmitOrigamiItemCsReq => "CmdSubmitOrigamiItemCsReq",
            Mbnnmfkffbo::CmdTakePictureCsReq => "CmdTakePictureCsReq",
            Mbnnmfkffbo::CmdUpdateMovieRacingDataCsReq => "CmdUpdateMovieRacingDataCsReq",
            Mbnnmfkffbo::CmdGetMovieRacingDataCsReq => "CmdGetMovieRacingDataCsReq",
            Mbnnmfkffbo::CmdGetGunPlayDataCsReq => "CmdGetGunPlayDataCsReq",
            Mbnnmfkffbo::CmdGetShareDataScRsp => "CmdGetShareDataScRsp",
            Mbnnmfkffbo::CmdShareScRsp => "CmdShareScRsp",
            Mbnnmfkffbo::CmdUpdateGunPlayDataCsReq => "CmdUpdateGunPlayDataCsReq",
            Mbnnmfkffbo::CmdShareCsReq => "CmdShareCsReq",
            Mbnnmfkffbo::CmdGetShareDataCsReq => "CmdGetShareDataCsReq",
            Mbnnmfkffbo::CmdCancelCacheNotifyScRsp => "CmdCancelCacheNotifyScRsp",
            Mbnnmfkffbo::CmdUpdateGunPlayDataScRsp => "CmdUpdateGunPlayDataScRsp",
            Mbnnmfkffbo::CmdSecurityReportScRsp => "CmdSecurityReportScRsp",
            Mbnnmfkffbo::CmdGetGunPlayDataScRsp => "CmdGetGunPlayDataScRsp",
            Mbnnmfkffbo::CmdSubmitOrigamiItemScRsp => "CmdSubmitOrigamiItemScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdMiscModuleTypeNone" => Some(Self::CmdMiscModuleTypeNone),
            "CmdCancelCacheNotifyCsReq" => Some(Self::CmdCancelCacheNotifyCsReq),
            "CmdGetMovieRacingDataScRsp" => Some(Self::CmdGetMovieRacingDataScRsp),
            "CmdTakePictureScRsp" => Some(Self::CmdTakePictureScRsp),
            "CmdTriggerVoiceScRsp" => Some(Self::CmdTriggerVoiceScRsp),
            "CmdUpdateMovieRacingDataScRsp" => Some(Self::CmdUpdateMovieRacingDataScRsp),
            "CmdTriggerVoiceCsReq" => Some(Self::CmdTriggerVoiceCsReq),
            "CmdSecurityReportCsReq" => Some(Self::CmdSecurityReportCsReq),
            "CmdSubmitOrigamiItemCsReq" => Some(Self::CmdSubmitOrigamiItemCsReq),
            "CmdTakePictureCsReq" => Some(Self::CmdTakePictureCsReq),
            "CmdUpdateMovieRacingDataCsReq" => Some(Self::CmdUpdateMovieRacingDataCsReq),
            "CmdGetMovieRacingDataCsReq" => Some(Self::CmdGetMovieRacingDataCsReq),
            "CmdGetGunPlayDataCsReq" => Some(Self::CmdGetGunPlayDataCsReq),
            "CmdGetShareDataScRsp" => Some(Self::CmdGetShareDataScRsp),
            "CmdShareScRsp" => Some(Self::CmdShareScRsp),
            "CmdUpdateGunPlayDataCsReq" => Some(Self::CmdUpdateGunPlayDataCsReq),
            "CmdShareCsReq" => Some(Self::CmdShareCsReq),
            "CmdGetShareDataCsReq" => Some(Self::CmdGetShareDataCsReq),
            "CmdCancelCacheNotifyScRsp" => Some(Self::CmdCancelCacheNotifyScRsp),
            "CmdUpdateGunPlayDataScRsp" => Some(Self::CmdUpdateGunPlayDataScRsp),
            "CmdSecurityReportScRsp" => Some(Self::CmdSecurityReportScRsp),
            "CmdGetGunPlayDataScRsp" => Some(Self::CmdGetGunPlayDataScRsp),
            "CmdSubmitOrigamiItemScRsp" => Some(Self::CmdSubmitOrigamiItemScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Hgfpcfnibdo {
    CacheNotifyTypeNone = 0,
    CacheNotifyTypeRecycle = 1,
    CacheNotifyTypeRecharge = 2,
}
impl Hgfpcfnibdo {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Hgfpcfnibdo::CacheNotifyTypeNone => "CACHE_NOTIFY_TYPE_NONE",
            Hgfpcfnibdo::CacheNotifyTypeRecycle => "CACHE_NOTIFY_TYPE_RECYCLE",
            Hgfpcfnibdo::CacheNotifyTypeRecharge => "CACHE_NOTIFY_TYPE_RECHARGE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CACHE_NOTIFY_TYPE_NONE" => Some(Self::CacheNotifyTypeNone),
            "CACHE_NOTIFY_TYPE_RECYCLE" => Some(Self::CacheNotifyTypeRecycle),
            "CACHE_NOTIFY_TYPE_RECHARGE" => Some(Self::CacheNotifyTypeRecharge),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Pfoklielimf {
    MovieRacingOverTake = 0,
    MovieRacingOverTakeEndless = 1,
    MovieRacingShooting = 2,
    MovieRacingShootingEndless = 3,
}
impl Pfoklielimf {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Pfoklielimf::MovieRacingOverTake => "MOVIE_RACING_OVER_TAKE",
            Pfoklielimf::MovieRacingOverTakeEndless => "MOVIE_RACING_OVER_TAKE_ENDLESS",
            Pfoklielimf::MovieRacingShooting => "MOVIE_RACING_SHOOTING",
            Pfoklielimf::MovieRacingShootingEndless => "MOVIE_RACING_SHOOTING_ENDLESS",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "MOVIE_RACING_OVER_TAKE" => Some(Self::MovieRacingOverTake),
            "MOVIE_RACING_OVER_TAKE_ENDLESS" => Some(Self::MovieRacingOverTakeEndless),
            "MOVIE_RACING_SHOOTING" => Some(Self::MovieRacingShooting),
            "MOVIE_RACING_SHOOTING_ENDLESS" => Some(Self::MovieRacingShootingEndless),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Niinikapdpg {
    CmdMissionTypeNone = 0,
    CmdInterruptMissionEventScRsp = 1285,
    CmdDailyTaskDataScNotify = 1243,
    CmdAcceptMissionEventScRsp = 1237,
    CmdSyncTaskCsReq = 1209,
    CmdAcceptMainMissionCsReq = 1291,
    CmdMissionRewardScNotify = 1202,
    CmdTeleportToMissionResetPointScRsp = 1228,
    CmdMissionAcceptScNotify = 1211,
    CmdSyncTaskScRsp = 1219,
    CmdGetMissionStatusCsReq = 1239,
    CmdFinishCosumeItemMissionScRsp = 1206,
    CmdMissionEventRewardScNotify = 1295,
    CmdStartFinishMainMissionScNotify = 1218,
    CmdGetMissionEventDataScRsp = 1259,
    CmdSubMissionRewardScNotify = 1201,
    CmdFinishTalkMissionCsReq = 1262,
    CmdUpdateTrackMainMissionIdCsReq = 1254,
    CmdTeleportToMissionResetPointCsReq = 1241,
    CmdGetMissionEventDataCsReq = 1233,
    CmdAcceptMissionEventCsReq = 1242,
    CmdMissionGroupWarnScNotify = 1268,
    CmdGetMissionDataCsReq = 1234,
    CmdUpdateTrackMainMissionIdScRsp = 1279,
    CmdStartFinishSubMissionScNotify = 1261,
    CmdSetMissionEventProgressScRsp = 1263,
    CmdGetMissionDataScRsp = 1248,
    CmdSetMissionEventProgressCsReq = 1256,
    CmdGetMainMissionCustomValueScRsp = 1282,
    CmdInterruptMissionEventCsReq = 1230,
    CmdGetMissionStatusScRsp = 1216,
    CmdAcceptMainMissionScRsp = 1297,
    CmdFinishTalkMissionScRsp = 1288,
    CmdFinishCosumeItemMissionCsReq = 1296,
    CmdGetMainMissionCustomValueCsReq = 1224,
}
impl Niinikapdpg {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Niinikapdpg::CmdMissionTypeNone => "CmdMissionTypeNone",
            Niinikapdpg::CmdInterruptMissionEventScRsp => "CmdInterruptMissionEventScRsp",
            Niinikapdpg::CmdDailyTaskDataScNotify => "CmdDailyTaskDataScNotify",
            Niinikapdpg::CmdAcceptMissionEventScRsp => "CmdAcceptMissionEventScRsp",
            Niinikapdpg::CmdSyncTaskCsReq => "CmdSyncTaskCsReq",
            Niinikapdpg::CmdAcceptMainMissionCsReq => "CmdAcceptMainMissionCsReq",
            Niinikapdpg::CmdMissionRewardScNotify => "CmdMissionRewardScNotify",
            Niinikapdpg::CmdTeleportToMissionResetPointScRsp => {
                "CmdTeleportToMissionResetPointScRsp"
            }
            Niinikapdpg::CmdMissionAcceptScNotify => "CmdMissionAcceptScNotify",
            Niinikapdpg::CmdSyncTaskScRsp => "CmdSyncTaskScRsp",
            Niinikapdpg::CmdGetMissionStatusCsReq => "CmdGetMissionStatusCsReq",
            Niinikapdpg::CmdFinishCosumeItemMissionScRsp => {
                "CmdFinishCosumeItemMissionScRsp"
            }
            Niinikapdpg::CmdMissionEventRewardScNotify => "CmdMissionEventRewardScNotify",
            Niinikapdpg::CmdStartFinishMainMissionScNotify => {
                "CmdStartFinishMainMissionScNotify"
            }
            Niinikapdpg::CmdGetMissionEventDataScRsp => "CmdGetMissionEventDataScRsp",
            Niinikapdpg::CmdSubMissionRewardScNotify => "CmdSubMissionRewardScNotify",
            Niinikapdpg::CmdFinishTalkMissionCsReq => "CmdFinishTalkMissionCsReq",
            Niinikapdpg::CmdUpdateTrackMainMissionIdCsReq => {
                "CmdUpdateTrackMainMissionIdCsReq"
            }
            Niinikapdpg::CmdTeleportToMissionResetPointCsReq => {
                "CmdTeleportToMissionResetPointCsReq"
            }
            Niinikapdpg::CmdGetMissionEventDataCsReq => "CmdGetMissionEventDataCsReq",
            Niinikapdpg::CmdAcceptMissionEventCsReq => "CmdAcceptMissionEventCsReq",
            Niinikapdpg::CmdMissionGroupWarnScNotify => "CmdMissionGroupWarnScNotify",
            Niinikapdpg::CmdGetMissionDataCsReq => "CmdGetMissionDataCsReq",
            Niinikapdpg::CmdUpdateTrackMainMissionIdScRsp => {
                "CmdUpdateTrackMainMissionIdScRsp"
            }
            Niinikapdpg::CmdStartFinishSubMissionScNotify => {
                "CmdStartFinishSubMissionScNotify"
            }
            Niinikapdpg::CmdSetMissionEventProgressScRsp => {
                "CmdSetMissionEventProgressScRsp"
            }
            Niinikapdpg::CmdGetMissionDataScRsp => "CmdGetMissionDataScRsp",
            Niinikapdpg::CmdSetMissionEventProgressCsReq => {
                "CmdSetMissionEventProgressCsReq"
            }
            Niinikapdpg::CmdGetMainMissionCustomValueScRsp => {
                "CmdGetMainMissionCustomValueScRsp"
            }
            Niinikapdpg::CmdInterruptMissionEventCsReq => "CmdInterruptMissionEventCsReq",
            Niinikapdpg::CmdGetMissionStatusScRsp => "CmdGetMissionStatusScRsp",
            Niinikapdpg::CmdAcceptMainMissionScRsp => "CmdAcceptMainMissionScRsp",
            Niinikapdpg::CmdFinishTalkMissionScRsp => "CmdFinishTalkMissionScRsp",
            Niinikapdpg::CmdFinishCosumeItemMissionCsReq => {
                "CmdFinishCosumeItemMissionCsReq"
            }
            Niinikapdpg::CmdGetMainMissionCustomValueCsReq => {
                "CmdGetMainMissionCustomValueCsReq"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdMissionTypeNone" => Some(Self::CmdMissionTypeNone),
            "CmdInterruptMissionEventScRsp" => Some(Self::CmdInterruptMissionEventScRsp),
            "CmdDailyTaskDataScNotify" => Some(Self::CmdDailyTaskDataScNotify),
            "CmdAcceptMissionEventScRsp" => Some(Self::CmdAcceptMissionEventScRsp),
            "CmdSyncTaskCsReq" => Some(Self::CmdSyncTaskCsReq),
            "CmdAcceptMainMissionCsReq" => Some(Self::CmdAcceptMainMissionCsReq),
            "CmdMissionRewardScNotify" => Some(Self::CmdMissionRewardScNotify),
            "CmdTeleportToMissionResetPointScRsp" => {
                Some(Self::CmdTeleportToMissionResetPointScRsp)
            }
            "CmdMissionAcceptScNotify" => Some(Self::CmdMissionAcceptScNotify),
            "CmdSyncTaskScRsp" => Some(Self::CmdSyncTaskScRsp),
            "CmdGetMissionStatusCsReq" => Some(Self::CmdGetMissionStatusCsReq),
            "CmdFinishCosumeItemMissionScRsp" => {
                Some(Self::CmdFinishCosumeItemMissionScRsp)
            }
            "CmdMissionEventRewardScNotify" => Some(Self::CmdMissionEventRewardScNotify),
            "CmdStartFinishMainMissionScNotify" => {
                Some(Self::CmdStartFinishMainMissionScNotify)
            }
            "CmdGetMissionEventDataScRsp" => Some(Self::CmdGetMissionEventDataScRsp),
            "CmdSubMissionRewardScNotify" => Some(Self::CmdSubMissionRewardScNotify),
            "CmdFinishTalkMissionCsReq" => Some(Self::CmdFinishTalkMissionCsReq),
            "CmdUpdateTrackMainMissionIdCsReq" => {
                Some(Self::CmdUpdateTrackMainMissionIdCsReq)
            }
            "CmdTeleportToMissionResetPointCsReq" => {
                Some(Self::CmdTeleportToMissionResetPointCsReq)
            }
            "CmdGetMissionEventDataCsReq" => Some(Self::CmdGetMissionEventDataCsReq),
            "CmdAcceptMissionEventCsReq" => Some(Self::CmdAcceptMissionEventCsReq),
            "CmdMissionGroupWarnScNotify" => Some(Self::CmdMissionGroupWarnScNotify),
            "CmdGetMissionDataCsReq" => Some(Self::CmdGetMissionDataCsReq),
            "CmdUpdateTrackMainMissionIdScRsp" => {
                Some(Self::CmdUpdateTrackMainMissionIdScRsp)
            }
            "CmdStartFinishSubMissionScNotify" => {
                Some(Self::CmdStartFinishSubMissionScNotify)
            }
            "CmdSetMissionEventProgressScRsp" => {
                Some(Self::CmdSetMissionEventProgressScRsp)
            }
            "CmdGetMissionDataScRsp" => Some(Self::CmdGetMissionDataScRsp),
            "CmdSetMissionEventProgressCsReq" => {
                Some(Self::CmdSetMissionEventProgressCsReq)
            }
            "CmdGetMainMissionCustomValueScRsp" => {
                Some(Self::CmdGetMainMissionCustomValueScRsp)
            }
            "CmdInterruptMissionEventCsReq" => Some(Self::CmdInterruptMissionEventCsReq),
            "CmdGetMissionStatusScRsp" => Some(Self::CmdGetMissionStatusScRsp),
            "CmdAcceptMainMissionScRsp" => Some(Self::CmdAcceptMainMissionScRsp),
            "CmdFinishTalkMissionScRsp" => Some(Self::CmdFinishTalkMissionScRsp),
            "CmdFinishCosumeItemMissionCsReq" => {
                Some(Self::CmdFinishCosumeItemMissionCsReq)
            }
            "CmdGetMainMissionCustomValueCsReq" => {
                Some(Self::CmdGetMainMissionCustomValueCsReq)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Knommefnljp {
    MissionSyncRecordNone = 0,
    MissionSyncRecordMainMissionAccept = 1,
    MissionSyncRecordMainMissionStart = 2,
    MissionSyncRecordMainMissionFinish = 3,
    MissionSyncRecordMainMissionDelete = 4,
    MissionSyncRecordMissionAccept = 11,
    MissionSyncRecordMissionStart = 12,
    MissionSyncRecordMissionFinish = 13,
    MissionSyncRecordMissionDelete = 14,
    MissionSyncRecordMissionProgress = 15,
}
impl Knommefnljp {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Knommefnljp::MissionSyncRecordNone => "MISSION_SYNC_RECORD_NONE",
            Knommefnljp::MissionSyncRecordMainMissionAccept => {
                "MISSION_SYNC_RECORD_MAIN_MISSION_ACCEPT"
            }
            Knommefnljp::MissionSyncRecordMainMissionStart => {
                "MISSION_SYNC_RECORD_MAIN_MISSION_START"
            }
            Knommefnljp::MissionSyncRecordMainMissionFinish => {
                "MISSION_SYNC_RECORD_MAIN_MISSION_FINISH"
            }
            Knommefnljp::MissionSyncRecordMainMissionDelete => {
                "MISSION_SYNC_RECORD_MAIN_MISSION_DELETE"
            }
            Knommefnljp::MissionSyncRecordMissionAccept => {
                "MISSION_SYNC_RECORD_MISSION_ACCEPT"
            }
            Knommefnljp::MissionSyncRecordMissionStart => {
                "MISSION_SYNC_RECORD_MISSION_START"
            }
            Knommefnljp::MissionSyncRecordMissionFinish => {
                "MISSION_SYNC_RECORD_MISSION_FINISH"
            }
            Knommefnljp::MissionSyncRecordMissionDelete => {
                "MISSION_SYNC_RECORD_MISSION_DELETE"
            }
            Knommefnljp::MissionSyncRecordMissionProgress => {
                "MISSION_SYNC_RECORD_MISSION_PROGRESS"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "MISSION_SYNC_RECORD_NONE" => Some(Self::MissionSyncRecordNone),
            "MISSION_SYNC_RECORD_MAIN_MISSION_ACCEPT" => {
                Some(Self::MissionSyncRecordMainMissionAccept)
            }
            "MISSION_SYNC_RECORD_MAIN_MISSION_START" => {
                Some(Self::MissionSyncRecordMainMissionStart)
            }
            "MISSION_SYNC_RECORD_MAIN_MISSION_FINISH" => {
                Some(Self::MissionSyncRecordMainMissionFinish)
            }
            "MISSION_SYNC_RECORD_MAIN_MISSION_DELETE" => {
                Some(Self::MissionSyncRecordMainMissionDelete)
            }
            "MISSION_SYNC_RECORD_MISSION_ACCEPT" => {
                Some(Self::MissionSyncRecordMissionAccept)
            }
            "MISSION_SYNC_RECORD_MISSION_START" => {
                Some(Self::MissionSyncRecordMissionStart)
            }
            "MISSION_SYNC_RECORD_MISSION_FINISH" => {
                Some(Self::MissionSyncRecordMissionFinish)
            }
            "MISSION_SYNC_RECORD_MISSION_DELETE" => {
                Some(Self::MissionSyncRecordMissionDelete)
            }
            "MISSION_SYNC_RECORD_MISSION_PROGRESS" => {
                Some(Self::MissionSyncRecordMissionProgress)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Ihaopljgjfj {
    MainMissionSyncNone = 0,
    MainMissionSyncMcv = 1,
}
impl Ihaopljgjfj {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Ihaopljgjfj::MainMissionSyncNone => "MAIN_MISSION_SYNC_NONE",
            Ihaopljgjfj::MainMissionSyncMcv => "MAIN_MISSION_SYNC_MCV",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "MAIN_MISSION_SYNC_NONE" => Some(Self::MainMissionSyncNone),
            "MAIN_MISSION_SYNC_MCV" => Some(Self::MainMissionSyncMcv),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Pcgkhmfdaei {
    TrackMainMissionUpdateNone = 0,
    TrackMainMissionUpdateAuto = 1,
    TrackMainMissionUpdateManual = 2,
    TrackMainMissionUpdateLoginReport = 3,
}
impl Pcgkhmfdaei {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Pcgkhmfdaei::TrackMainMissionUpdateNone => "TRACK_MAIN_MISSION_UPDATE_NONE",
            Pcgkhmfdaei::TrackMainMissionUpdateAuto => "TRACK_MAIN_MISSION_UPDATE_AUTO",
            Pcgkhmfdaei::TrackMainMissionUpdateManual => {
                "TRACK_MAIN_MISSION_UPDATE_MANUAL"
            }
            Pcgkhmfdaei::TrackMainMissionUpdateLoginReport => {
                "TRACK_MAIN_MISSION_UPDATE_LOGIN_REPORT"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "TRACK_MAIN_MISSION_UPDATE_NONE" => Some(Self::TrackMainMissionUpdateNone),
            "TRACK_MAIN_MISSION_UPDATE_AUTO" => Some(Self::TrackMainMissionUpdateAuto),
            "TRACK_MAIN_MISSION_UPDATE_MANUAL" => {
                Some(Self::TrackMainMissionUpdateManual)
            }
            "TRACK_MAIN_MISSION_UPDATE_LOGIN_REPORT" => {
                Some(Self::TrackMainMissionUpdateLoginReport)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Plfdpoekndo {
    CmdMonopolyTypeNone = 0,
    CmdMonopolyGetRegionProgressCsReq = 7040,
    CmdMonopolyGetDailyInitItemCsReq = 7031,
    CmdDailyFirstEnterMonopolyActivityScRsp = 7006,
    CmdDeleteSocialEventServerCacheScRsp = 7015,
    CmdMonopolySelectOptionScRsp = 7045,
    CmdMonopolySelectOptionCsReq = 7029,
    CmdMonopolyAcceptQuizScRsp = 7079,
    CmdMonopolyReRollRandomScRsp = 7042,
    CmdGetMbtiReportCsReq = 7071,
    CmdMonopolyClickMbtiReportScRsp = 7074,
    CmdDailyFirstEnterMonopolyActivityCsReq = 7096,
    CmdMonopolyRollRandomScRsp = 7059,
    CmdMonopolyClickCellCsReq = 7047,
    CmdMonopolyDailySettleScNotify = 7035,
    CmdMonopolyGiveUpCurContentCsReq = 7063,
    CmdMonopolyMoveCsReq = 7043,
    CmdGetMonopolyInfoScRsp = 7048,
    CmdMonopolyRollDiceScRsp = 7019,
    CmdMonopolyTakeRaffleTicketRewardScRsp = 7070,
    CmdMonopolyGuessChooseCsReq = 7100,
    CmdMonopolyScrachRaffleTicketScRsp = 7014,
    CmdMonopolyClickMbtiReportCsReq = 7038,
    CmdMonopolyEventSelectFriendScRsp = 7094,
    CmdMonopolyConfirmRandomScRsp = 7039,
    CmdMonopolyContentUpdateScNotify = 7061,
    CmdMonopolyGameBingoFlipCardScRsp = 7008,
    CmdMonopolyGetRafflePoolInfoScRsp = 7020,
    CmdMonopolyCheatDiceScRsp = 7028,
    CmdMonopolyGameGachaScRsp = 7082,
    CmdMonopolyGuessBuyInformationScRsp = 7090,
    CmdMonopolyGameCreateScNotify = 7025,
    CmdMonopolyTakePhaseRewardCsReq = 7058,
    CmdGetMbtiReportScRsp = 7049,
    CmdGetMonopolyFriendRankingListCsReq = 7044,
    CmdMonopolyMoveScRsp = 7086,
    CmdMonopolyConfirmRandomCsReq = 7037,
    CmdGetSocialEventServerCacheScRsp = 7022,
    CmdMonopolyGiveUpCurContentScRsp = 7001,
    CmdMonopolyRollDiceCsReq = 7009,
    CmdMonopolyBuyGoodsScRsp = 7030,
    CmdMonopolyCheatDiceCsReq = 7041,
    CmdMonopolyEventSelectFriendCsReq = 7003,
    CmdMonopolyGetRafflePoolInfoCsReq = 7007,
    CmdGetMonopolyDailyReportScRsp = 7021,
    CmdMonopolyScrachRaffleTicketCsReq = 7099,
    CmdMonopolyReRollRandomCsReq = 7095,
    CmdMonopolyGuessBuyInformationCsReq = 7089,
    CmdMonopolyGameRaiseRatioScRsp = 7091,
    CmdGetMonopolyInfoCsReq = 7034,
    CmdGetMonopolyMbtiReportRewardCsReq = 7052,
    CmdMonopolyBuyGoodsCsReq = 7016,
    CmdMonopolyLikeScRsp = 7093,
    CmdMonopolyConditionUpdateScNotify = 7032,
    CmdMonopolyLikeCsReq = 7075,
    CmdMonopolyTakePhaseRewardScRsp = 7064,
    CmdMonopolyGetDailyInitItemScRsp = 7050,
    CmdMonopolyLikeScNotify = 7098,
    CmdMonopolyAcceptQuizCsReq = 7054,
    CmdGetSocialEventServerCacheCsReq = 7005,
    CmdMonopolyClickCellScRsp = 7027,
    CmdMonopolyUpgradeAssetScRsp = 7056,
    CmdMonopolyTakeRaffleTicketRewardCsReq = 7084,
    CmdMonopolyCellUpdateNotify = 7088,
    CmdGetMonopolyFriendRankingListScRsp = 7004,
    CmdMonopolySocialEventEffectScNotify = 7046,
    CmdMonopolyUpgradeAssetCsReq = 7085,
    CmdMonopolyGameRaiseRatioCsReq = 7018,
    CmdMonopolyGuessChooseScRsp = 7065,
    CmdMonopolyEventLoadUpdateScNotify = 7078,
    CmdMonopolyRollRandomCsReq = 7033,
    CmdMonopolyGuessDrawScNotify = 7067,
    CmdMonopolyGetRaffleTicketScRsp = 7010,
    CmdMonopolyGetRegionProgressScRsp = 7069,
    CmdMonopolyGetRaffleTicketCsReq = 7013,
    CmdMonopolyGameSettleScNotify = 7097,
    CmdMonopolyActionResultScNotify = 7062,
    CmdMonopolySttUpdateScNotify = 7077,
    CmdMonopolyQuizDurationChangeScNotify = 7092,
    CmdGetMonopolyMbtiReportRewardScRsp = 7081,
    CmdDeleteSocialEventServerCacheCsReq = 7012,
    CmdMonopolyGameBingoFlipCardCsReq = 7011,
    CmdGetMonopolyDailyReportCsReq = 7076,
    CmdMonopolyGameGachaCsReq = 7024,
}
impl Plfdpoekndo {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Plfdpoekndo::CmdMonopolyTypeNone => "CmdMonopolyTypeNone",
            Plfdpoekndo::CmdMonopolyGetRegionProgressCsReq => {
                "CmdMonopolyGetRegionProgressCsReq"
            }
            Plfdpoekndo::CmdMonopolyGetDailyInitItemCsReq => {
                "CmdMonopolyGetDailyInitItemCsReq"
            }
            Plfdpoekndo::CmdDailyFirstEnterMonopolyActivityScRsp => {
                "CmdDailyFirstEnterMonopolyActivityScRsp"
            }
            Plfdpoekndo::CmdDeleteSocialEventServerCacheScRsp => {
                "CmdDeleteSocialEventServerCacheScRsp"
            }
            Plfdpoekndo::CmdMonopolySelectOptionScRsp => "CmdMonopolySelectOptionScRsp",
            Plfdpoekndo::CmdMonopolySelectOptionCsReq => "CmdMonopolySelectOptionCsReq",
            Plfdpoekndo::CmdMonopolyAcceptQuizScRsp => "CmdMonopolyAcceptQuizScRsp",
            Plfdpoekndo::CmdMonopolyReRollRandomScRsp => "CmdMonopolyReRollRandomScRsp",
            Plfdpoekndo::CmdGetMbtiReportCsReq => "CmdGetMbtiReportCsReq",
            Plfdpoekndo::CmdMonopolyClickMbtiReportScRsp => {
                "CmdMonopolyClickMbtiReportScRsp"
            }
            Plfdpoekndo::CmdDailyFirstEnterMonopolyActivityCsReq => {
                "CmdDailyFirstEnterMonopolyActivityCsReq"
            }
            Plfdpoekndo::CmdMonopolyRollRandomScRsp => "CmdMonopolyRollRandomScRsp",
            Plfdpoekndo::CmdMonopolyClickCellCsReq => "CmdMonopolyClickCellCsReq",
            Plfdpoekndo::CmdMonopolyDailySettleScNotify => {
                "CmdMonopolyDailySettleScNotify"
            }
            Plfdpoekndo::CmdMonopolyGiveUpCurContentCsReq => {
                "CmdMonopolyGiveUpCurContentCsReq"
            }
            Plfdpoekndo::CmdMonopolyMoveCsReq => "CmdMonopolyMoveCsReq",
            Plfdpoekndo::CmdGetMonopolyInfoScRsp => "CmdGetMonopolyInfoScRsp",
            Plfdpoekndo::CmdMonopolyRollDiceScRsp => "CmdMonopolyRollDiceScRsp",
            Plfdpoekndo::CmdMonopolyTakeRaffleTicketRewardScRsp => {
                "CmdMonopolyTakeRaffleTicketRewardScRsp"
            }
            Plfdpoekndo::CmdMonopolyGuessChooseCsReq => "CmdMonopolyGuessChooseCsReq",
            Plfdpoekndo::CmdMonopolyScrachRaffleTicketScRsp => {
                "CmdMonopolyScrachRaffleTicketScRsp"
            }
            Plfdpoekndo::CmdMonopolyClickMbtiReportCsReq => {
                "CmdMonopolyClickMbtiReportCsReq"
            }
            Plfdpoekndo::CmdMonopolyEventSelectFriendScRsp => {
                "CmdMonopolyEventSelectFriendScRsp"
            }
            Plfdpoekndo::CmdMonopolyConfirmRandomScRsp => "CmdMonopolyConfirmRandomScRsp",
            Plfdpoekndo::CmdMonopolyContentUpdateScNotify => {
                "CmdMonopolyContentUpdateScNotify"
            }
            Plfdpoekndo::CmdMonopolyGameBingoFlipCardScRsp => {
                "CmdMonopolyGameBingoFlipCardScRsp"
            }
            Plfdpoekndo::CmdMonopolyGetRafflePoolInfoScRsp => {
                "CmdMonopolyGetRafflePoolInfoScRsp"
            }
            Plfdpoekndo::CmdMonopolyCheatDiceScRsp => "CmdMonopolyCheatDiceScRsp",
            Plfdpoekndo::CmdMonopolyGameGachaScRsp => "CmdMonopolyGameGachaScRsp",
            Plfdpoekndo::CmdMonopolyGuessBuyInformationScRsp => {
                "CmdMonopolyGuessBuyInformationScRsp"
            }
            Plfdpoekndo::CmdMonopolyGameCreateScNotify => "CmdMonopolyGameCreateScNotify",
            Plfdpoekndo::CmdMonopolyTakePhaseRewardCsReq => {
                "CmdMonopolyTakePhaseRewardCsReq"
            }
            Plfdpoekndo::CmdGetMbtiReportScRsp => "CmdGetMbtiReportScRsp",
            Plfdpoekndo::CmdGetMonopolyFriendRankingListCsReq => {
                "CmdGetMonopolyFriendRankingListCsReq"
            }
            Plfdpoekndo::CmdMonopolyMoveScRsp => "CmdMonopolyMoveScRsp",
            Plfdpoekndo::CmdMonopolyConfirmRandomCsReq => "CmdMonopolyConfirmRandomCsReq",
            Plfdpoekndo::CmdGetSocialEventServerCacheScRsp => {
                "CmdGetSocialEventServerCacheScRsp"
            }
            Plfdpoekndo::CmdMonopolyGiveUpCurContentScRsp => {
                "CmdMonopolyGiveUpCurContentScRsp"
            }
            Plfdpoekndo::CmdMonopolyRollDiceCsReq => "CmdMonopolyRollDiceCsReq",
            Plfdpoekndo::CmdMonopolyBuyGoodsScRsp => "CmdMonopolyBuyGoodsScRsp",
            Plfdpoekndo::CmdMonopolyCheatDiceCsReq => "CmdMonopolyCheatDiceCsReq",
            Plfdpoekndo::CmdMonopolyEventSelectFriendCsReq => {
                "CmdMonopolyEventSelectFriendCsReq"
            }
            Plfdpoekndo::CmdMonopolyGetRafflePoolInfoCsReq => {
                "CmdMonopolyGetRafflePoolInfoCsReq"
            }
            Plfdpoekndo::CmdGetMonopolyDailyReportScRsp => {
                "CmdGetMonopolyDailyReportScRsp"
            }
            Plfdpoekndo::CmdMonopolyScrachRaffleTicketCsReq => {
                "CmdMonopolyScrachRaffleTicketCsReq"
            }
            Plfdpoekndo::CmdMonopolyReRollRandomCsReq => "CmdMonopolyReRollRandomCsReq",
            Plfdpoekndo::CmdMonopolyGuessBuyInformationCsReq => {
                "CmdMonopolyGuessBuyInformationCsReq"
            }
            Plfdpoekndo::CmdMonopolyGameRaiseRatioScRsp => {
                "CmdMonopolyGameRaiseRatioScRsp"
            }
            Plfdpoekndo::CmdGetMonopolyInfoCsReq => "CmdGetMonopolyInfoCsReq",
            Plfdpoekndo::CmdGetMonopolyMbtiReportRewardCsReq => {
                "CmdGetMonopolyMbtiReportRewardCsReq"
            }
            Plfdpoekndo::CmdMonopolyBuyGoodsCsReq => "CmdMonopolyBuyGoodsCsReq",
            Plfdpoekndo::CmdMonopolyLikeScRsp => "CmdMonopolyLikeScRsp",
            Plfdpoekndo::CmdMonopolyConditionUpdateScNotify => {
                "CmdMonopolyConditionUpdateScNotify"
            }
            Plfdpoekndo::CmdMonopolyLikeCsReq => "CmdMonopolyLikeCsReq",
            Plfdpoekndo::CmdMonopolyTakePhaseRewardScRsp => {
                "CmdMonopolyTakePhaseRewardScRsp"
            }
            Plfdpoekndo::CmdMonopolyGetDailyInitItemScRsp => {
                "CmdMonopolyGetDailyInitItemScRsp"
            }
            Plfdpoekndo::CmdMonopolyLikeScNotify => "CmdMonopolyLikeScNotify",
            Plfdpoekndo::CmdMonopolyAcceptQuizCsReq => "CmdMonopolyAcceptQuizCsReq",
            Plfdpoekndo::CmdGetSocialEventServerCacheCsReq => {
                "CmdGetSocialEventServerCacheCsReq"
            }
            Plfdpoekndo::CmdMonopolyClickCellScRsp => "CmdMonopolyClickCellScRsp",
            Plfdpoekndo::CmdMonopolyUpgradeAssetScRsp => "CmdMonopolyUpgradeAssetScRsp",
            Plfdpoekndo::CmdMonopolyTakeRaffleTicketRewardCsReq => {
                "CmdMonopolyTakeRaffleTicketRewardCsReq"
            }
            Plfdpoekndo::CmdMonopolyCellUpdateNotify => "CmdMonopolyCellUpdateNotify",
            Plfdpoekndo::CmdGetMonopolyFriendRankingListScRsp => {
                "CmdGetMonopolyFriendRankingListScRsp"
            }
            Plfdpoekndo::CmdMonopolySocialEventEffectScNotify => {
                "CmdMonopolySocialEventEffectScNotify"
            }
            Plfdpoekndo::CmdMonopolyUpgradeAssetCsReq => "CmdMonopolyUpgradeAssetCsReq",
            Plfdpoekndo::CmdMonopolyGameRaiseRatioCsReq => {
                "CmdMonopolyGameRaiseRatioCsReq"
            }
            Plfdpoekndo::CmdMonopolyGuessChooseScRsp => "CmdMonopolyGuessChooseScRsp",
            Plfdpoekndo::CmdMonopolyEventLoadUpdateScNotify => {
                "CmdMonopolyEventLoadUpdateScNotify"
            }
            Plfdpoekndo::CmdMonopolyRollRandomCsReq => "CmdMonopolyRollRandomCsReq",
            Plfdpoekndo::CmdMonopolyGuessDrawScNotify => "CmdMonopolyGuessDrawScNotify",
            Plfdpoekndo::CmdMonopolyGetRaffleTicketScRsp => {
                "CmdMonopolyGetRaffleTicketScRsp"
            }
            Plfdpoekndo::CmdMonopolyGetRegionProgressScRsp => {
                "CmdMonopolyGetRegionProgressScRsp"
            }
            Plfdpoekndo::CmdMonopolyGetRaffleTicketCsReq => {
                "CmdMonopolyGetRaffleTicketCsReq"
            }
            Plfdpoekndo::CmdMonopolyGameSettleScNotify => "CmdMonopolyGameSettleScNotify",
            Plfdpoekndo::CmdMonopolyActionResultScNotify => {
                "CmdMonopolyActionResultScNotify"
            }
            Plfdpoekndo::CmdMonopolySttUpdateScNotify => "CmdMonopolySttUpdateScNotify",
            Plfdpoekndo::CmdMonopolyQuizDurationChangeScNotify => {
                "CmdMonopolyQuizDurationChangeScNotify"
            }
            Plfdpoekndo::CmdGetMonopolyMbtiReportRewardScRsp => {
                "CmdGetMonopolyMbtiReportRewardScRsp"
            }
            Plfdpoekndo::CmdDeleteSocialEventServerCacheCsReq => {
                "CmdDeleteSocialEventServerCacheCsReq"
            }
            Plfdpoekndo::CmdMonopolyGameBingoFlipCardCsReq => {
                "CmdMonopolyGameBingoFlipCardCsReq"
            }
            Plfdpoekndo::CmdGetMonopolyDailyReportCsReq => {
                "CmdGetMonopolyDailyReportCsReq"
            }
            Plfdpoekndo::CmdMonopolyGameGachaCsReq => "CmdMonopolyGameGachaCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdMonopolyTypeNone" => Some(Self::CmdMonopolyTypeNone),
            "CmdMonopolyGetRegionProgressCsReq" => {
                Some(Self::CmdMonopolyGetRegionProgressCsReq)
            }
            "CmdMonopolyGetDailyInitItemCsReq" => {
                Some(Self::CmdMonopolyGetDailyInitItemCsReq)
            }
            "CmdDailyFirstEnterMonopolyActivityScRsp" => {
                Some(Self::CmdDailyFirstEnterMonopolyActivityScRsp)
            }
            "CmdDeleteSocialEventServerCacheScRsp" => {
                Some(Self::CmdDeleteSocialEventServerCacheScRsp)
            }
            "CmdMonopolySelectOptionScRsp" => Some(Self::CmdMonopolySelectOptionScRsp),
            "CmdMonopolySelectOptionCsReq" => Some(Self::CmdMonopolySelectOptionCsReq),
            "CmdMonopolyAcceptQuizScRsp" => Some(Self::CmdMonopolyAcceptQuizScRsp),
            "CmdMonopolyReRollRandomScRsp" => Some(Self::CmdMonopolyReRollRandomScRsp),
            "CmdGetMbtiReportCsReq" => Some(Self::CmdGetMbtiReportCsReq),
            "CmdMonopolyClickMbtiReportScRsp" => {
                Some(Self::CmdMonopolyClickMbtiReportScRsp)
            }
            "CmdDailyFirstEnterMonopolyActivityCsReq" => {
                Some(Self::CmdDailyFirstEnterMonopolyActivityCsReq)
            }
            "CmdMonopolyRollRandomScRsp" => Some(Self::CmdMonopolyRollRandomScRsp),
            "CmdMonopolyClickCellCsReq" => Some(Self::CmdMonopolyClickCellCsReq),
            "CmdMonopolyDailySettleScNotify" => {
                Some(Self::CmdMonopolyDailySettleScNotify)
            }
            "CmdMonopolyGiveUpCurContentCsReq" => {
                Some(Self::CmdMonopolyGiveUpCurContentCsReq)
            }
            "CmdMonopolyMoveCsReq" => Some(Self::CmdMonopolyMoveCsReq),
            "CmdGetMonopolyInfoScRsp" => Some(Self::CmdGetMonopolyInfoScRsp),
            "CmdMonopolyRollDiceScRsp" => Some(Self::CmdMonopolyRollDiceScRsp),
            "CmdMonopolyTakeRaffleTicketRewardScRsp" => {
                Some(Self::CmdMonopolyTakeRaffleTicketRewardScRsp)
            }
            "CmdMonopolyGuessChooseCsReq" => Some(Self::CmdMonopolyGuessChooseCsReq),
            "CmdMonopolyScrachRaffleTicketScRsp" => {
                Some(Self::CmdMonopolyScrachRaffleTicketScRsp)
            }
            "CmdMonopolyClickMbtiReportCsReq" => {
                Some(Self::CmdMonopolyClickMbtiReportCsReq)
            }
            "CmdMonopolyEventSelectFriendScRsp" => {
                Some(Self::CmdMonopolyEventSelectFriendScRsp)
            }
            "CmdMonopolyConfirmRandomScRsp" => Some(Self::CmdMonopolyConfirmRandomScRsp),
            "CmdMonopolyContentUpdateScNotify" => {
                Some(Self::CmdMonopolyContentUpdateScNotify)
            }
            "CmdMonopolyGameBingoFlipCardScRsp" => {
                Some(Self::CmdMonopolyGameBingoFlipCardScRsp)
            }
            "CmdMonopolyGetRafflePoolInfoScRsp" => {
                Some(Self::CmdMonopolyGetRafflePoolInfoScRsp)
            }
            "CmdMonopolyCheatDiceScRsp" => Some(Self::CmdMonopolyCheatDiceScRsp),
            "CmdMonopolyGameGachaScRsp" => Some(Self::CmdMonopolyGameGachaScRsp),
            "CmdMonopolyGuessBuyInformationScRsp" => {
                Some(Self::CmdMonopolyGuessBuyInformationScRsp)
            }
            "CmdMonopolyGameCreateScNotify" => Some(Self::CmdMonopolyGameCreateScNotify),
            "CmdMonopolyTakePhaseRewardCsReq" => {
                Some(Self::CmdMonopolyTakePhaseRewardCsReq)
            }
            "CmdGetMbtiReportScRsp" => Some(Self::CmdGetMbtiReportScRsp),
            "CmdGetMonopolyFriendRankingListCsReq" => {
                Some(Self::CmdGetMonopolyFriendRankingListCsReq)
            }
            "CmdMonopolyMoveScRsp" => Some(Self::CmdMonopolyMoveScRsp),
            "CmdMonopolyConfirmRandomCsReq" => Some(Self::CmdMonopolyConfirmRandomCsReq),
            "CmdGetSocialEventServerCacheScRsp" => {
                Some(Self::CmdGetSocialEventServerCacheScRsp)
            }
            "CmdMonopolyGiveUpCurContentScRsp" => {
                Some(Self::CmdMonopolyGiveUpCurContentScRsp)
            }
            "CmdMonopolyRollDiceCsReq" => Some(Self::CmdMonopolyRollDiceCsReq),
            "CmdMonopolyBuyGoodsScRsp" => Some(Self::CmdMonopolyBuyGoodsScRsp),
            "CmdMonopolyCheatDiceCsReq" => Some(Self::CmdMonopolyCheatDiceCsReq),
            "CmdMonopolyEventSelectFriendCsReq" => {
                Some(Self::CmdMonopolyEventSelectFriendCsReq)
            }
            "CmdMonopolyGetRafflePoolInfoCsReq" => {
                Some(Self::CmdMonopolyGetRafflePoolInfoCsReq)
            }
            "CmdGetMonopolyDailyReportScRsp" => {
                Some(Self::CmdGetMonopolyDailyReportScRsp)
            }
            "CmdMonopolyScrachRaffleTicketCsReq" => {
                Some(Self::CmdMonopolyScrachRaffleTicketCsReq)
            }
            "CmdMonopolyReRollRandomCsReq" => Some(Self::CmdMonopolyReRollRandomCsReq),
            "CmdMonopolyGuessBuyInformationCsReq" => {
                Some(Self::CmdMonopolyGuessBuyInformationCsReq)
            }
            "CmdMonopolyGameRaiseRatioScRsp" => {
                Some(Self::CmdMonopolyGameRaiseRatioScRsp)
            }
            "CmdGetMonopolyInfoCsReq" => Some(Self::CmdGetMonopolyInfoCsReq),
            "CmdGetMonopolyMbtiReportRewardCsReq" => {
                Some(Self::CmdGetMonopolyMbtiReportRewardCsReq)
            }
            "CmdMonopolyBuyGoodsCsReq" => Some(Self::CmdMonopolyBuyGoodsCsReq),
            "CmdMonopolyLikeScRsp" => Some(Self::CmdMonopolyLikeScRsp),
            "CmdMonopolyConditionUpdateScNotify" => {
                Some(Self::CmdMonopolyConditionUpdateScNotify)
            }
            "CmdMonopolyLikeCsReq" => Some(Self::CmdMonopolyLikeCsReq),
            "CmdMonopolyTakePhaseRewardScRsp" => {
                Some(Self::CmdMonopolyTakePhaseRewardScRsp)
            }
            "CmdMonopolyGetDailyInitItemScRsp" => {
                Some(Self::CmdMonopolyGetDailyInitItemScRsp)
            }
            "CmdMonopolyLikeScNotify" => Some(Self::CmdMonopolyLikeScNotify),
            "CmdMonopolyAcceptQuizCsReq" => Some(Self::CmdMonopolyAcceptQuizCsReq),
            "CmdGetSocialEventServerCacheCsReq" => {
                Some(Self::CmdGetSocialEventServerCacheCsReq)
            }
            "CmdMonopolyClickCellScRsp" => Some(Self::CmdMonopolyClickCellScRsp),
            "CmdMonopolyUpgradeAssetScRsp" => Some(Self::CmdMonopolyUpgradeAssetScRsp),
            "CmdMonopolyTakeRaffleTicketRewardCsReq" => {
                Some(Self::CmdMonopolyTakeRaffleTicketRewardCsReq)
            }
            "CmdMonopolyCellUpdateNotify" => Some(Self::CmdMonopolyCellUpdateNotify),
            "CmdGetMonopolyFriendRankingListScRsp" => {
                Some(Self::CmdGetMonopolyFriendRankingListScRsp)
            }
            "CmdMonopolySocialEventEffectScNotify" => {
                Some(Self::CmdMonopolySocialEventEffectScNotify)
            }
            "CmdMonopolyUpgradeAssetCsReq" => Some(Self::CmdMonopolyUpgradeAssetCsReq),
            "CmdMonopolyGameRaiseRatioCsReq" => {
                Some(Self::CmdMonopolyGameRaiseRatioCsReq)
            }
            "CmdMonopolyGuessChooseScRsp" => Some(Self::CmdMonopolyGuessChooseScRsp),
            "CmdMonopolyEventLoadUpdateScNotify" => {
                Some(Self::CmdMonopolyEventLoadUpdateScNotify)
            }
            "CmdMonopolyRollRandomCsReq" => Some(Self::CmdMonopolyRollRandomCsReq),
            "CmdMonopolyGuessDrawScNotify" => Some(Self::CmdMonopolyGuessDrawScNotify),
            "CmdMonopolyGetRaffleTicketScRsp" => {
                Some(Self::CmdMonopolyGetRaffleTicketScRsp)
            }
            "CmdMonopolyGetRegionProgressScRsp" => {
                Some(Self::CmdMonopolyGetRegionProgressScRsp)
            }
            "CmdMonopolyGetRaffleTicketCsReq" => {
                Some(Self::CmdMonopolyGetRaffleTicketCsReq)
            }
            "CmdMonopolyGameSettleScNotify" => Some(Self::CmdMonopolyGameSettleScNotify),
            "CmdMonopolyActionResultScNotify" => {
                Some(Self::CmdMonopolyActionResultScNotify)
            }
            "CmdMonopolySttUpdateScNotify" => Some(Self::CmdMonopolySttUpdateScNotify),
            "CmdMonopolyQuizDurationChangeScNotify" => {
                Some(Self::CmdMonopolyQuizDurationChangeScNotify)
            }
            "CmdGetMonopolyMbtiReportRewardScRsp" => {
                Some(Self::CmdGetMonopolyMbtiReportRewardScRsp)
            }
            "CmdDeleteSocialEventServerCacheCsReq" => {
                Some(Self::CmdDeleteSocialEventServerCacheCsReq)
            }
            "CmdMonopolyGameBingoFlipCardCsReq" => {
                Some(Self::CmdMonopolyGameBingoFlipCardCsReq)
            }
            "CmdGetMonopolyDailyReportCsReq" => {
                Some(Self::CmdGetMonopolyDailyReportCsReq)
            }
            "CmdMonopolyGameGachaCsReq" => Some(Self::CmdMonopolyGameGachaCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Fnmajoaineo {
    MonopolySocialEventStatusNone = 0,
    MonopolySocialEventStatusWaitingSelectFriend = 1,
}
impl Fnmajoaineo {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Fnmajoaineo::MonopolySocialEventStatusNone => {
                "MONOPOLY_SOCIAL_EVENT_STATUS_NONE"
            }
            Fnmajoaineo::MonopolySocialEventStatusWaitingSelectFriend => {
                "MONOPOLY_SOCIAL_EVENT_STATUS_WAITING_SELECT_FRIEND"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "MONOPOLY_SOCIAL_EVENT_STATUS_NONE" => {
                Some(Self::MonopolySocialEventStatusNone)
            }
            "MONOPOLY_SOCIAL_EVENT_STATUS_WAITING_SELECT_FRIEND" => {
                Some(Self::MonopolySocialEventStatusWaitingSelectFriend)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Knneiidpdhm {
    MonopolyCellStateIdle = 0,
    MonopolyCellStateBarrier = 1,
    MonopolyCellStateGround = 2,
    MonopolyCellStateFinish = 3,
}
impl Knneiidpdhm {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Knneiidpdhm::MonopolyCellStateIdle => "MONOPOLY_CELL_STATE_IDLE",
            Knneiidpdhm::MonopolyCellStateBarrier => "MONOPOLY_CELL_STATE_BARRIER",
            Knneiidpdhm::MonopolyCellStateGround => "MONOPOLY_CELL_STATE_GROUND",
            Knneiidpdhm::MonopolyCellStateFinish => "MONOPOLY_CELL_STATE_FINISH",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "MONOPOLY_CELL_STATE_IDLE" => Some(Self::MonopolyCellStateIdle),
            "MONOPOLY_CELL_STATE_BARRIER" => Some(Self::MonopolyCellStateBarrier),
            "MONOPOLY_CELL_STATE_GROUND" => Some(Self::MonopolyCellStateGround),
            "MONOPOLY_CELL_STATE_FINISH" => Some(Self::MonopolyCellStateFinish),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Cpkffbbekka {
    MonopolyActionResultSourceTypeNone = 0,
    MonopolyActionResultSourceTypeEffect = 1,
    MonopolyActionResultSourceTypeAssetBonus = 2,
    MonopolyActionResultSourceTypeAssetTax = 3,
    MonopolyActionResultSourceTypeAssetUpgrade = 4,
    MonopolyActionResultSourceTypeGameSettle = 5,
    MonopolyActionResultSourceTypeBuyGoods = 6,
    MonopolyActionResultSourceTypeClick = 7,
    MonopolyActionResultSourceTypeSocialEvent = 8,
    MonopolyActionResultSourceTypeLike = 9,
    MonopolyActionResultSourceTypeQuizGameSettle = 10,
}
impl Cpkffbbekka {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Cpkffbbekka::MonopolyActionResultSourceTypeNone => {
                "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_NONE"
            }
            Cpkffbbekka::MonopolyActionResultSourceTypeEffect => {
                "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_EFFECT"
            }
            Cpkffbbekka::MonopolyActionResultSourceTypeAssetBonus => {
                "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_ASSET_BONUS"
            }
            Cpkffbbekka::MonopolyActionResultSourceTypeAssetTax => {
                "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_ASSET_TAX"
            }
            Cpkffbbekka::MonopolyActionResultSourceTypeAssetUpgrade => {
                "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_ASSET_UPGRADE"
            }
            Cpkffbbekka::MonopolyActionResultSourceTypeGameSettle => {
                "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_GAME_SETTLE"
            }
            Cpkffbbekka::MonopolyActionResultSourceTypeBuyGoods => {
                "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_BUY_GOODS"
            }
            Cpkffbbekka::MonopolyActionResultSourceTypeClick => {
                "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_CLICK"
            }
            Cpkffbbekka::MonopolyActionResultSourceTypeSocialEvent => {
                "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_SOCIAL_EVENT"
            }
            Cpkffbbekka::MonopolyActionResultSourceTypeLike => {
                "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_LIKE"
            }
            Cpkffbbekka::MonopolyActionResultSourceTypeQuizGameSettle => {
                "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_QUIZ_GAME_SETTLE"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_NONE" => {
                Some(Self::MonopolyActionResultSourceTypeNone)
            }
            "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_EFFECT" => {
                Some(Self::MonopolyActionResultSourceTypeEffect)
            }
            "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_ASSET_BONUS" => {
                Some(Self::MonopolyActionResultSourceTypeAssetBonus)
            }
            "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_ASSET_TAX" => {
                Some(Self::MonopolyActionResultSourceTypeAssetTax)
            }
            "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_ASSET_UPGRADE" => {
                Some(Self::MonopolyActionResultSourceTypeAssetUpgrade)
            }
            "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_GAME_SETTLE" => {
                Some(Self::MonopolyActionResultSourceTypeGameSettle)
            }
            "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_BUY_GOODS" => {
                Some(Self::MonopolyActionResultSourceTypeBuyGoods)
            }
            "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_CLICK" => {
                Some(Self::MonopolyActionResultSourceTypeClick)
            }
            "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_SOCIAL_EVENT" => {
                Some(Self::MonopolyActionResultSourceTypeSocialEvent)
            }
            "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_LIKE" => {
                Some(Self::MonopolyActionResultSourceTypeLike)
            }
            "MONOPOLY_ACTION_RESULT_SOURCE_TYPE_QUIZ_GAME_SETTLE" => {
                Some(Self::MonopolyActionResultSourceTypeQuizGameSettle)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Fdkapmfjgjl {
    CmdMultipleDropTypeNone = 0,
    CmdGetMultipleDropInfoCsReq = 4634,
    CmdGetPlayerReturnMultiDropInfoScRsp = 4602,
    CmdMultipleDropInfoNotify = 4609,
    CmdGetPlayerReturnMultiDropInfoCsReq = 4688,
    CmdMultipleDropInfoScNotify = 4662,
    CmdGetMultipleDropInfoScRsp = 4648,
}
impl Fdkapmfjgjl {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Fdkapmfjgjl::CmdMultipleDropTypeNone => "CmdMultipleDropTypeNone",
            Fdkapmfjgjl::CmdGetMultipleDropInfoCsReq => "CmdGetMultipleDropInfoCsReq",
            Fdkapmfjgjl::CmdGetPlayerReturnMultiDropInfoScRsp => {
                "CmdGetPlayerReturnMultiDropInfoScRsp"
            }
            Fdkapmfjgjl::CmdMultipleDropInfoNotify => "CmdMultipleDropInfoNotify",
            Fdkapmfjgjl::CmdGetPlayerReturnMultiDropInfoCsReq => {
                "CmdGetPlayerReturnMultiDropInfoCsReq"
            }
            Fdkapmfjgjl::CmdMultipleDropInfoScNotify => "CmdMultipleDropInfoScNotify",
            Fdkapmfjgjl::CmdGetMultipleDropInfoScRsp => "CmdGetMultipleDropInfoScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdMultipleDropTypeNone" => Some(Self::CmdMultipleDropTypeNone),
            "CmdGetMultipleDropInfoCsReq" => Some(Self::CmdGetMultipleDropInfoCsReq),
            "CmdGetPlayerReturnMultiDropInfoScRsp" => {
                Some(Self::CmdGetPlayerReturnMultiDropInfoScRsp)
            }
            "CmdMultipleDropInfoNotify" => Some(Self::CmdMultipleDropInfoNotify),
            "CmdGetPlayerReturnMultiDropInfoCsReq" => {
                Some(Self::CmdGetPlayerReturnMultiDropInfoCsReq)
            }
            "CmdMultipleDropInfoScNotify" => Some(Self::CmdMultipleDropInfoScNotify),
            "CmdGetMultipleDropInfoScRsp" => Some(Self::CmdGetMultipleDropInfoScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mkeclbphcol {
    CmdMuseumTypeNone = 0,
    CmdSetStuffToAreaScRsp = 4309,
    CmdMuseumTargetStartNotify = 4363,
    CmdSetStuffToAreaCsReq = 4302,
    CmdFinishCurTurnCsReq = 4345,
    CmdGetStuffScNotify = 4386,
    CmdMuseumInfoChangedScNotify = 4395,
    CmdGetExhibitScNotify = 4329,
    CmdUpgradeAreaStatCsReq = 4333,
    CmdUpgradeAreaScRsp = 4306,
    CmdRemoveStuffFromAreaScRsp = 4343,
    CmdMuseumTakeCollectRewardScRsp = 4361,
    CmdMuseumDispatchFinishedScNotify = 4356,
    CmdMuseumFundsChangedScNotify = 4342,
    CmdMuseumRandomEventQueryCsReq = 4339,
    CmdMuseumTargetMissionFinishNotify = 4301,
    CmdRemoveStuffFromAreaCsReq = 4319,
    CmdMuseumRandomEventQueryScRsp = 4316,
    CmdUpgradeAreaStatScRsp = 4359,
    CmdBuyNpcStuffCsReq = 4362,
    CmdBuyNpcStuffScRsp = 4388,
    CmdGetMuseumInfoScRsp = 4348,
    CmdMuseumTakeCollectRewardCsReq = 4328,
    CmdGetMuseumInfoCsReq = 4334,
    CmdMuseumRandomEventSelectCsReq = 4330,
    CmdUpgradeAreaCsReq = 4396,
    CmdMuseumRandomEventStartScNotify = 4337,
    CmdMuseumTargetRewardNotify = 4341,
    CmdMuseumRandomEventSelectScRsp = 4385,
    CmdFinishCurTurnScRsp = 4368,
}
impl Mkeclbphcol {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mkeclbphcol::CmdMuseumTypeNone => "CmdMuseumTypeNone",
            Mkeclbphcol::CmdSetStuffToAreaScRsp => "CmdSetStuffToAreaScRsp",
            Mkeclbphcol::CmdMuseumTargetStartNotify => "CmdMuseumTargetStartNotify",
            Mkeclbphcol::CmdSetStuffToAreaCsReq => "CmdSetStuffToAreaCsReq",
            Mkeclbphcol::CmdFinishCurTurnCsReq => "CmdFinishCurTurnCsReq",
            Mkeclbphcol::CmdGetStuffScNotify => "CmdGetStuffScNotify",
            Mkeclbphcol::CmdMuseumInfoChangedScNotify => "CmdMuseumInfoChangedScNotify",
            Mkeclbphcol::CmdGetExhibitScNotify => "CmdGetExhibitScNotify",
            Mkeclbphcol::CmdUpgradeAreaStatCsReq => "CmdUpgradeAreaStatCsReq",
            Mkeclbphcol::CmdUpgradeAreaScRsp => "CmdUpgradeAreaScRsp",
            Mkeclbphcol::CmdRemoveStuffFromAreaScRsp => "CmdRemoveStuffFromAreaScRsp",
            Mkeclbphcol::CmdMuseumTakeCollectRewardScRsp => {
                "CmdMuseumTakeCollectRewardScRsp"
            }
            Mkeclbphcol::CmdMuseumDispatchFinishedScNotify => {
                "CmdMuseumDispatchFinishedScNotify"
            }
            Mkeclbphcol::CmdMuseumFundsChangedScNotify => "CmdMuseumFundsChangedScNotify",
            Mkeclbphcol::CmdMuseumRandomEventQueryCsReq => {
                "CmdMuseumRandomEventQueryCsReq"
            }
            Mkeclbphcol::CmdMuseumTargetMissionFinishNotify => {
                "CmdMuseumTargetMissionFinishNotify"
            }
            Mkeclbphcol::CmdRemoveStuffFromAreaCsReq => "CmdRemoveStuffFromAreaCsReq",
            Mkeclbphcol::CmdMuseumRandomEventQueryScRsp => {
                "CmdMuseumRandomEventQueryScRsp"
            }
            Mkeclbphcol::CmdUpgradeAreaStatScRsp => "CmdUpgradeAreaStatScRsp",
            Mkeclbphcol::CmdBuyNpcStuffCsReq => "CmdBuyNpcStuffCsReq",
            Mkeclbphcol::CmdBuyNpcStuffScRsp => "CmdBuyNpcStuffScRsp",
            Mkeclbphcol::CmdGetMuseumInfoScRsp => "CmdGetMuseumInfoScRsp",
            Mkeclbphcol::CmdMuseumTakeCollectRewardCsReq => {
                "CmdMuseumTakeCollectRewardCsReq"
            }
            Mkeclbphcol::CmdGetMuseumInfoCsReq => "CmdGetMuseumInfoCsReq",
            Mkeclbphcol::CmdMuseumRandomEventSelectCsReq => {
                "CmdMuseumRandomEventSelectCsReq"
            }
            Mkeclbphcol::CmdUpgradeAreaCsReq => "CmdUpgradeAreaCsReq",
            Mkeclbphcol::CmdMuseumRandomEventStartScNotify => {
                "CmdMuseumRandomEventStartScNotify"
            }
            Mkeclbphcol::CmdMuseumTargetRewardNotify => "CmdMuseumTargetRewardNotify",
            Mkeclbphcol::CmdMuseumRandomEventSelectScRsp => {
                "CmdMuseumRandomEventSelectScRsp"
            }
            Mkeclbphcol::CmdFinishCurTurnScRsp => "CmdFinishCurTurnScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdMuseumTypeNone" => Some(Self::CmdMuseumTypeNone),
            "CmdSetStuffToAreaScRsp" => Some(Self::CmdSetStuffToAreaScRsp),
            "CmdMuseumTargetStartNotify" => Some(Self::CmdMuseumTargetStartNotify),
            "CmdSetStuffToAreaCsReq" => Some(Self::CmdSetStuffToAreaCsReq),
            "CmdFinishCurTurnCsReq" => Some(Self::CmdFinishCurTurnCsReq),
            "CmdGetStuffScNotify" => Some(Self::CmdGetStuffScNotify),
            "CmdMuseumInfoChangedScNotify" => Some(Self::CmdMuseumInfoChangedScNotify),
            "CmdGetExhibitScNotify" => Some(Self::CmdGetExhibitScNotify),
            "CmdUpgradeAreaStatCsReq" => Some(Self::CmdUpgradeAreaStatCsReq),
            "CmdUpgradeAreaScRsp" => Some(Self::CmdUpgradeAreaScRsp),
            "CmdRemoveStuffFromAreaScRsp" => Some(Self::CmdRemoveStuffFromAreaScRsp),
            "CmdMuseumTakeCollectRewardScRsp" => {
                Some(Self::CmdMuseumTakeCollectRewardScRsp)
            }
            "CmdMuseumDispatchFinishedScNotify" => {
                Some(Self::CmdMuseumDispatchFinishedScNotify)
            }
            "CmdMuseumFundsChangedScNotify" => Some(Self::CmdMuseumFundsChangedScNotify),
            "CmdMuseumRandomEventQueryCsReq" => {
                Some(Self::CmdMuseumRandomEventQueryCsReq)
            }
            "CmdMuseumTargetMissionFinishNotify" => {
                Some(Self::CmdMuseumTargetMissionFinishNotify)
            }
            "CmdRemoveStuffFromAreaCsReq" => Some(Self::CmdRemoveStuffFromAreaCsReq),
            "CmdMuseumRandomEventQueryScRsp" => {
                Some(Self::CmdMuseumRandomEventQueryScRsp)
            }
            "CmdUpgradeAreaStatScRsp" => Some(Self::CmdUpgradeAreaStatScRsp),
            "CmdBuyNpcStuffCsReq" => Some(Self::CmdBuyNpcStuffCsReq),
            "CmdBuyNpcStuffScRsp" => Some(Self::CmdBuyNpcStuffScRsp),
            "CmdGetMuseumInfoScRsp" => Some(Self::CmdGetMuseumInfoScRsp),
            "CmdMuseumTakeCollectRewardCsReq" => {
                Some(Self::CmdMuseumTakeCollectRewardCsReq)
            }
            "CmdGetMuseumInfoCsReq" => Some(Self::CmdGetMuseumInfoCsReq),
            "CmdMuseumRandomEventSelectCsReq" => {
                Some(Self::CmdMuseumRandomEventSelectCsReq)
            }
            "CmdUpgradeAreaCsReq" => Some(Self::CmdUpgradeAreaCsReq),
            "CmdMuseumRandomEventStartScNotify" => {
                Some(Self::CmdMuseumRandomEventStartScNotify)
            }
            "CmdMuseumTargetRewardNotify" => Some(Self::CmdMuseumTargetRewardNotify),
            "CmdMuseumRandomEventSelectScRsp" => {
                Some(Self::CmdMuseumRandomEventSelectScRsp)
            }
            "CmdFinishCurTurnScRsp" => Some(Self::CmdFinishCurTurnScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Chhfkgocfgn {
    MuseumRandomEventStateNone = 0,
    MuseumRandomEventStateStart = 1,
    MuseumRandomEventStateProcessing = 2,
    MuseumRandomEventStateFinish = 3,
}
impl Chhfkgocfgn {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Chhfkgocfgn::MuseumRandomEventStateNone => "MUSEUM_RANDOM_EVENT_STATE_NONE",
            Chhfkgocfgn::MuseumRandomEventStateStart => "MUSEUM_RANDOM_EVENT_STATE_START",
            Chhfkgocfgn::MuseumRandomEventStateProcessing => {
                "MUSEUM_RANDOM_EVENT_STATE_PROCESSING"
            }
            Chhfkgocfgn::MuseumRandomEventStateFinish => {
                "MUSEUM_RANDOM_EVENT_STATE_FINISH"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "MUSEUM_RANDOM_EVENT_STATE_NONE" => Some(Self::MuseumRandomEventStateNone),
            "MUSEUM_RANDOM_EVENT_STATE_START" => Some(Self::MuseumRandomEventStateStart),
            "MUSEUM_RANDOM_EVENT_STATE_PROCESSING" => {
                Some(Self::MuseumRandomEventStateProcessing)
            }
            "MUSEUM_RANDOM_EVENT_STATE_FINISH" => {
                Some(Self::MuseumRandomEventStateFinish)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Cihlhpobgai {
    WorkPosNone = 0,
    WorkPos1 = 1,
    WorkPos2 = 2,
    WorkPos3 = 3,
}
impl Cihlhpobgai {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Cihlhpobgai::WorkPosNone => "WORK_POS_NONE",
            Cihlhpobgai::WorkPos1 => "WORK_POS_1",
            Cihlhpobgai::WorkPos2 => "WORK_POS_2",
            Cihlhpobgai::WorkPos3 => "WORK_POS_3",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "WORK_POS_NONE" => Some(Self::WorkPosNone),
            "WORK_POS_1" => Some(Self::WorkPos1),
            "WORK_POS_2" => Some(Self::WorkPos2),
            "WORK_POS_3" => Some(Self::WorkPos3),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Pbmdmmpjkio {
    StatTypeNone = 0,
    StatTypeArt = 1,
    StatTypeCulture = 2,
    StatTypePopular = 3,
}
impl Pbmdmmpjkio {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Pbmdmmpjkio::StatTypeNone => "STAT_TYPE_NONE",
            Pbmdmmpjkio::StatTypeArt => "STAT_TYPE_ART",
            Pbmdmmpjkio::StatTypeCulture => "STAT_TYPE_CULTURE",
            Pbmdmmpjkio::StatTypePopular => "STAT_TYPE_POPULAR",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "STAT_TYPE_NONE" => Some(Self::StatTypeNone),
            "STAT_TYPE_ART" => Some(Self::StatTypeArt),
            "STAT_TYPE_CULTURE" => Some(Self::StatTypeCulture),
            "STAT_TYPE_POPULAR" => Some(Self::StatTypePopular),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Bhphoniencb {
    Unknow = 0,
    MissionReward = 1,
    EventBuyStuff = 2,
    MarketBuyStuff = 3,
    QuestReward = 4,
    Initial = 5,
    PhaseFinishReward = 6,
}
impl Bhphoniencb {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Bhphoniencb::Unknow => "UNKNOW",
            Bhphoniencb::MissionReward => "MISSION_REWARD",
            Bhphoniencb::EventBuyStuff => "EVENT_BUY_STUFF",
            Bhphoniencb::MarketBuyStuff => "MARKET_BUY_STUFF",
            Bhphoniencb::QuestReward => "QUEST_REWARD",
            Bhphoniencb::Initial => "INITIAL",
            Bhphoniencb::PhaseFinishReward => "PHASE_FINISH_REWARD",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "UNKNOW" => Some(Self::Unknow),
            "MISSION_REWARD" => Some(Self::MissionReward),
            "EVENT_BUY_STUFF" => Some(Self::EventBuyStuff),
            "MARKET_BUY_STUFF" => Some(Self::MarketBuyStuff),
            "QUEST_REWARD" => Some(Self::QuestReward),
            "INITIAL" => Some(Self::Initial),
            "PHASE_FINISH_REWARD" => Some(Self::PhaseFinishReward),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Njmiomdjolc {
    CmdOfferingTypeNone = 0,
    CmdSubmitOfferingItemScRsp = 6937,
    CmdTakeOfferingRewardCsReq = 6940,
    CmdTakeOfferingRewardScRsp = 6939,
    CmdGetOfferingInfoScRsp = 6938,
    CmdGetOfferingInfoCsReq = 6921,
    CmdSubmitOfferingItemCsReq = 6933,
}
impl Njmiomdjolc {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Njmiomdjolc::CmdOfferingTypeNone => "CmdOfferingTypeNone",
            Njmiomdjolc::CmdSubmitOfferingItemScRsp => "CmdSubmitOfferingItemScRsp",
            Njmiomdjolc::CmdTakeOfferingRewardCsReq => "CmdTakeOfferingRewardCsReq",
            Njmiomdjolc::CmdTakeOfferingRewardScRsp => "CmdTakeOfferingRewardScRsp",
            Njmiomdjolc::CmdGetOfferingInfoScRsp => "CmdGetOfferingInfoScRsp",
            Njmiomdjolc::CmdGetOfferingInfoCsReq => "CmdGetOfferingInfoCsReq",
            Njmiomdjolc::CmdSubmitOfferingItemCsReq => "CmdSubmitOfferingItemCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdOfferingTypeNone" => Some(Self::CmdOfferingTypeNone),
            "CmdSubmitOfferingItemScRsp" => Some(Self::CmdSubmitOfferingItemScRsp),
            "CmdTakeOfferingRewardCsReq" => Some(Self::CmdTakeOfferingRewardCsReq),
            "CmdTakeOfferingRewardScRsp" => Some(Self::CmdTakeOfferingRewardScRsp),
            "CmdGetOfferingInfoScRsp" => Some(Self::CmdGetOfferingInfoScRsp),
            "CmdGetOfferingInfoCsReq" => Some(Self::CmdGetOfferingInfoCsReq),
            "CmdSubmitOfferingItemCsReq" => Some(Self::CmdSubmitOfferingItemCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Albfieindla {
    OfferingStateNone = 0,
    OfferingStateLock = 1,
    OfferingStateOpen = 2,
}
impl Albfieindla {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Albfieindla::OfferingStateNone => "OFFERING_STATE_NONE",
            Albfieindla::OfferingStateLock => "OFFERING_STATE_LOCK",
            Albfieindla::OfferingStateOpen => "OFFERING_STATE_OPEN",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "OFFERING_STATE_NONE" => Some(Self::OfferingStateNone),
            "OFFERING_STATE_LOCK" => Some(Self::OfferingStateLock),
            "OFFERING_STATE_OPEN" => Some(Self::OfferingStateOpen),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mffphpeaajm {
    CmdPamMissionTypeNone = 0,
    CmdSyncAcceptedPamMissionNotify = 4062,
    CmdAcceptedPamMissionExpireCsReq = 4034,
    CmdAcceptedPamMissionExpireScRsp = 4048,
}
impl Mffphpeaajm {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mffphpeaajm::CmdPamMissionTypeNone => "CmdPamMissionTypeNone",
            Mffphpeaajm::CmdSyncAcceptedPamMissionNotify => {
                "CmdSyncAcceptedPamMissionNotify"
            }
            Mffphpeaajm::CmdAcceptedPamMissionExpireCsReq => {
                "CmdAcceptedPamMissionExpireCsReq"
            }
            Mffphpeaajm::CmdAcceptedPamMissionExpireScRsp => {
                "CmdAcceptedPamMissionExpireScRsp"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdPamMissionTypeNone" => Some(Self::CmdPamMissionTypeNone),
            "CmdSyncAcceptedPamMissionNotify" => {
                Some(Self::CmdSyncAcceptedPamMissionNotify)
            }
            "CmdAcceptedPamMissionExpireCsReq" => {
                Some(Self::CmdAcceptedPamMissionExpireCsReq)
            }
            "CmdAcceptedPamMissionExpireScRsp" => {
                Some(Self::CmdAcceptedPamMissionExpireScRsp)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Ieoildlcdkb {
    CmdPhoneTypeNone = 0,
    CmdSelectPhoneThemeScRsp = 5119,
    CmdGetPhoneDataScRsp = 5148,
    CmdSelectChatBubbleScRsp = 5188,
    CmdSelectPhoneThemeCsReq = 5109,
    CmdUnlockChatBubbleScNotify = 5102,
    CmdSelectChatBubbleCsReq = 5162,
    CmdGetPhoneDataCsReq = 5134,
    CmdUnlockPhoneThemeScNotify = 5143,
}
impl Ieoildlcdkb {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Ieoildlcdkb::CmdPhoneTypeNone => "CmdPhoneTypeNone",
            Ieoildlcdkb::CmdSelectPhoneThemeScRsp => "CmdSelectPhoneThemeScRsp",
            Ieoildlcdkb::CmdGetPhoneDataScRsp => "CmdGetPhoneDataScRsp",
            Ieoildlcdkb::CmdSelectChatBubbleScRsp => "CmdSelectChatBubbleScRsp",
            Ieoildlcdkb::CmdSelectPhoneThemeCsReq => "CmdSelectPhoneThemeCsReq",
            Ieoildlcdkb::CmdUnlockChatBubbleScNotify => "CmdUnlockChatBubbleScNotify",
            Ieoildlcdkb::CmdSelectChatBubbleCsReq => "CmdSelectChatBubbleCsReq",
            Ieoildlcdkb::CmdGetPhoneDataCsReq => "CmdGetPhoneDataCsReq",
            Ieoildlcdkb::CmdUnlockPhoneThemeScNotify => "CmdUnlockPhoneThemeScNotify",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdPhoneTypeNone" => Some(Self::CmdPhoneTypeNone),
            "CmdSelectPhoneThemeScRsp" => Some(Self::CmdSelectPhoneThemeScRsp),
            "CmdGetPhoneDataScRsp" => Some(Self::CmdGetPhoneDataScRsp),
            "CmdSelectChatBubbleScRsp" => Some(Self::CmdSelectChatBubbleScRsp),
            "CmdSelectPhoneThemeCsReq" => Some(Self::CmdSelectPhoneThemeCsReq),
            "CmdUnlockChatBubbleScNotify" => Some(Self::CmdUnlockChatBubbleScNotify),
            "CmdSelectChatBubbleCsReq" => Some(Self::CmdSelectChatBubbleCsReq),
            "CmdGetPhoneDataCsReq" => Some(Self::CmdGetPhoneDataCsReq),
            "CmdUnlockPhoneThemeScNotify" => Some(Self::CmdUnlockPhoneThemeScNotify),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum CmdPlayerType {
    None = 0,
    CmdPlayerLogoutCsReq = 62,
    CmdPlayerGetTokenCsReq = 2,
    CmdClientDownloadDataScNotify = 92,
    CmdSetGameplayBirthdayCsReq = 35,
    CmdAceAntiCheaterCsReq = 4,
    CmdHeroBasicTypeChangedNotify = 89,
    CmdQueryProductInfoScRsp = 67,
    CmdRetcodeNotify = 98,
    CmdPlayerLogoutScRsp = 88,
    CmdAntiAddictScNotify = 37,
    CmdFeatureSwitchClosedScNotify = 94,
    CmdSetNicknameScRsp = 16,
    CmdStaminaInfoScNotify = 69,
    CmdUpdatePlayerSettingScRsp = 20,
    CmdPlayerGetTokenScRsp = 9,
    CmdReserveStaminaExchangeScRsp = 40,
    CmdReserveStaminaExchangeCsReq = 14,
    CmdPlayerLoginScRsp = 48,
    CmdGetLevelRewardTakenListCsReq = 30,
    CmdGetSecretKeyInfoScRsp = 12,
    CmdPlayerLoginCsReq = 34,
    CmdGmTalkCsReq = 29,
    CmdQueryProductInfoCsReq = 90,
    CmdSetRedPointStatusScNotify = 84,
    CmdGetLevelRewardCsReq = 56,
    CmdGetHeroBasicTypeInfoScRsp = 82,
    CmdGetLevelRewardScRsp = 63,
    CmdPlayerHeartBeatCsReq = 71,
    CmdGetSecretKeyInfoCsReq = 22,
    CmdGetBasicInfoScRsp = 73,
    CmdGmTalkScNotify = 43,
    CmdSetPlayerInfoCsReq = 100,
    CmdMonthCardRewardNotify = 93,
    CmdGetVideoVersionKeyCsReq = 13,
    CmdServerAnnounceNotify = 18,
    CmdUpdateFeatureSwitchScNotify = 55,
    CmdSetHeroBasicTypeScRsp = 97,
    CmdSetLanguageScRsp = 61,
    CmdPlayerLoginFinishCsReq = 15,
    CmdExchangeStaminaCsReq = 6,
    CmdDailyRefreshNotify = 51,
    CmdPlayerLoginFinishScRsp = 72,
    CmdGetHeroBasicTypeInfoCsReq = 24,
    CmdGetVideoVersionKeyScRsp = 10,
    CmdClientObjDownloadDataScNotify = 58,
    CmdGmTalkScRsp = 45,
    CmdUpdatePlayerSettingCsReq = 7,
    CmdClientObjUploadCsReq = 64,
    CmdClientObjUploadScRsp = 78,
    CmdGateServerScNotify = 3,
    CmdSetGenderCsReq = 79,
    CmdExchangeStaminaScRsp = 33,
    CmdGetAuthkeyCsReq = 59,
    CmdSetGenderScRsp = 25,
    CmdGetLevelRewardTakenListScRsp = 85,
    CmdSetLanguageCsReq = 28,
    CmdGetBasicInfoCsReq = 66,
    CmdAceAntiCheaterScRsp = 75,
    CmdPlayerKickOutScNotify = 86,
    CmdSetPlayerInfoScRsp = 65,
    CmdRegionStopScNotify = 42,
    CmdSetHeroBasicTypeCsReq = 91,
    CmdSetGameplayBirthdayScRsp = 44,
    CmdPlayerHeartBeatScRsp = 49,
    CmdGetAuthkeyScRsp = 95,
    CmdSetNicknameCsReq = 39,
}
impl CmdPlayerType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            CmdPlayerType::None => "CmdPlayerTypeNone",
            CmdPlayerType::CmdPlayerLogoutCsReq => "CmdPlayerLogoutCsReq",
            CmdPlayerType::CmdPlayerGetTokenCsReq => "CmdPlayerGetTokenCsReq",
            CmdPlayerType::CmdClientDownloadDataScNotify => {
                "CmdClientDownloadDataScNotify"
            }
            CmdPlayerType::CmdSetGameplayBirthdayCsReq => "CmdSetGameplayBirthdayCsReq",
            CmdPlayerType::CmdAceAntiCheaterCsReq => "CmdAceAntiCheaterCsReq",
            CmdPlayerType::CmdHeroBasicTypeChangedNotify => {
                "CmdHeroBasicTypeChangedNotify"
            }
            CmdPlayerType::CmdQueryProductInfoScRsp => "CmdQueryProductInfoScRsp",
            CmdPlayerType::CmdRetcodeNotify => "CmdRetcodeNotify",
            CmdPlayerType::CmdPlayerLogoutScRsp => "CmdPlayerLogoutScRsp",
            CmdPlayerType::CmdAntiAddictScNotify => "CmdAntiAddictScNotify",
            CmdPlayerType::CmdFeatureSwitchClosedScNotify => {
                "CmdFeatureSwitchClosedScNotify"
            }
            CmdPlayerType::CmdSetNicknameScRsp => "CmdSetNicknameScRsp",
            CmdPlayerType::CmdStaminaInfoScNotify => "CmdStaminaInfoScNotify",
            CmdPlayerType::CmdUpdatePlayerSettingScRsp => "CmdUpdatePlayerSettingScRsp",
            CmdPlayerType::CmdPlayerGetTokenScRsp => "CmdPlayerGetTokenScRsp",
            CmdPlayerType::CmdReserveStaminaExchangeScRsp => {
                "CmdReserveStaminaExchangeScRsp"
            }
            CmdPlayerType::CmdReserveStaminaExchangeCsReq => {
                "CmdReserveStaminaExchangeCsReq"
            }
            CmdPlayerType::CmdPlayerLoginScRsp => "CmdPlayerLoginScRsp",
            CmdPlayerType::CmdGetLevelRewardTakenListCsReq => {
                "CmdGetLevelRewardTakenListCsReq"
            }
            CmdPlayerType::CmdGetSecretKeyInfoScRsp => "CmdGetSecretKeyInfoScRsp",
            CmdPlayerType::CmdPlayerLoginCsReq => "CmdPlayerLoginCsReq",
            CmdPlayerType::CmdGmTalkCsReq => "CmdGmTalkCsReq",
            CmdPlayerType::CmdQueryProductInfoCsReq => "CmdQueryProductInfoCsReq",
            CmdPlayerType::CmdSetRedPointStatusScNotify => "CmdSetRedPointStatusScNotify",
            CmdPlayerType::CmdGetLevelRewardCsReq => "CmdGetLevelRewardCsReq",
            CmdPlayerType::CmdGetHeroBasicTypeInfoScRsp => "CmdGetHeroBasicTypeInfoScRsp",
            CmdPlayerType::CmdGetLevelRewardScRsp => "CmdGetLevelRewardScRsp",
            CmdPlayerType::CmdPlayerHeartBeatCsReq => "CmdPlayerHeartBeatCsReq",
            CmdPlayerType::CmdGetSecretKeyInfoCsReq => "CmdGetSecretKeyInfoCsReq",
            CmdPlayerType::CmdGetBasicInfoScRsp => "CmdGetBasicInfoScRsp",
            CmdPlayerType::CmdGmTalkScNotify => "CmdGmTalkScNotify",
            CmdPlayerType::CmdSetPlayerInfoCsReq => "CmdSetPlayerInfoCsReq",
            CmdPlayerType::CmdMonthCardRewardNotify => "CmdMonthCardRewardNotify",
            CmdPlayerType::CmdGetVideoVersionKeyCsReq => "CmdGetVideoVersionKeyCsReq",
            CmdPlayerType::CmdServerAnnounceNotify => "CmdServerAnnounceNotify",
            CmdPlayerType::CmdUpdateFeatureSwitchScNotify => {
                "CmdUpdateFeatureSwitchScNotify"
            }
            CmdPlayerType::CmdSetHeroBasicTypeScRsp => "CmdSetHeroBasicTypeScRsp",
            CmdPlayerType::CmdSetLanguageScRsp => "CmdSetLanguageScRsp",
            CmdPlayerType::CmdPlayerLoginFinishCsReq => "CmdPlayerLoginFinishCsReq",
            CmdPlayerType::CmdExchangeStaminaCsReq => "CmdExchangeStaminaCsReq",
            CmdPlayerType::CmdDailyRefreshNotify => "CmdDailyRefreshNotify",
            CmdPlayerType::CmdPlayerLoginFinishScRsp => "CmdPlayerLoginFinishScRsp",
            CmdPlayerType::CmdGetHeroBasicTypeInfoCsReq => "CmdGetHeroBasicTypeInfoCsReq",
            CmdPlayerType::CmdGetVideoVersionKeyScRsp => "CmdGetVideoVersionKeyScRsp",
            CmdPlayerType::CmdClientObjDownloadDataScNotify => {
                "CmdClientObjDownloadDataScNotify"
            }
            CmdPlayerType::CmdGmTalkScRsp => "CmdGmTalkScRsp",
            CmdPlayerType::CmdUpdatePlayerSettingCsReq => "CmdUpdatePlayerSettingCsReq",
            CmdPlayerType::CmdClientObjUploadCsReq => "CmdClientObjUploadCsReq",
            CmdPlayerType::CmdClientObjUploadScRsp => "CmdClientObjUploadScRsp",
            CmdPlayerType::CmdGateServerScNotify => "CmdGateServerScNotify",
            CmdPlayerType::CmdSetGenderCsReq => "CmdSetGenderCsReq",
            CmdPlayerType::CmdExchangeStaminaScRsp => "CmdExchangeStaminaScRsp",
            CmdPlayerType::CmdGetAuthkeyCsReq => "CmdGetAuthkeyCsReq",
            CmdPlayerType::CmdSetGenderScRsp => "CmdSetGenderScRsp",
            CmdPlayerType::CmdGetLevelRewardTakenListScRsp => {
                "CmdGetLevelRewardTakenListScRsp"
            }
            CmdPlayerType::CmdSetLanguageCsReq => "CmdSetLanguageCsReq",
            CmdPlayerType::CmdGetBasicInfoCsReq => "CmdGetBasicInfoCsReq",
            CmdPlayerType::CmdAceAntiCheaterScRsp => "CmdAceAntiCheaterScRsp",
            CmdPlayerType::CmdPlayerKickOutScNotify => "CmdPlayerKickOutScNotify",
            CmdPlayerType::CmdSetPlayerInfoScRsp => "CmdSetPlayerInfoScRsp",
            CmdPlayerType::CmdRegionStopScNotify => "CmdRegionStopScNotify",
            CmdPlayerType::CmdSetHeroBasicTypeCsReq => "CmdSetHeroBasicTypeCsReq",
            CmdPlayerType::CmdSetGameplayBirthdayScRsp => "CmdSetGameplayBirthdayScRsp",
            CmdPlayerType::CmdPlayerHeartBeatScRsp => "CmdPlayerHeartBeatScRsp",
            CmdPlayerType::CmdGetAuthkeyScRsp => "CmdGetAuthkeyScRsp",
            CmdPlayerType::CmdSetNicknameCsReq => "CmdSetNicknameCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdPlayerTypeNone" => Some(Self::None),
            "CmdPlayerLogoutCsReq" => Some(Self::CmdPlayerLogoutCsReq),
            "CmdPlayerGetTokenCsReq" => Some(Self::CmdPlayerGetTokenCsReq),
            "CmdClientDownloadDataScNotify" => Some(Self::CmdClientDownloadDataScNotify),
            "CmdSetGameplayBirthdayCsReq" => Some(Self::CmdSetGameplayBirthdayCsReq),
            "CmdAceAntiCheaterCsReq" => Some(Self::CmdAceAntiCheaterCsReq),
            "CmdHeroBasicTypeChangedNotify" => Some(Self::CmdHeroBasicTypeChangedNotify),
            "CmdQueryProductInfoScRsp" => Some(Self::CmdQueryProductInfoScRsp),
            "CmdRetcodeNotify" => Some(Self::CmdRetcodeNotify),
            "CmdPlayerLogoutScRsp" => Some(Self::CmdPlayerLogoutScRsp),
            "CmdAntiAddictScNotify" => Some(Self::CmdAntiAddictScNotify),
            "CmdFeatureSwitchClosedScNotify" => {
                Some(Self::CmdFeatureSwitchClosedScNotify)
            }
            "CmdSetNicknameScRsp" => Some(Self::CmdSetNicknameScRsp),
            "CmdStaminaInfoScNotify" => Some(Self::CmdStaminaInfoScNotify),
            "CmdUpdatePlayerSettingScRsp" => Some(Self::CmdUpdatePlayerSettingScRsp),
            "CmdPlayerGetTokenScRsp" => Some(Self::CmdPlayerGetTokenScRsp),
            "CmdReserveStaminaExchangeScRsp" => {
                Some(Self::CmdReserveStaminaExchangeScRsp)
            }
            "CmdReserveStaminaExchangeCsReq" => {
                Some(Self::CmdReserveStaminaExchangeCsReq)
            }
            "CmdPlayerLoginScRsp" => Some(Self::CmdPlayerLoginScRsp),
            "CmdGetLevelRewardTakenListCsReq" => {
                Some(Self::CmdGetLevelRewardTakenListCsReq)
            }
            "CmdGetSecretKeyInfoScRsp" => Some(Self::CmdGetSecretKeyInfoScRsp),
            "CmdPlayerLoginCsReq" => Some(Self::CmdPlayerLoginCsReq),
            "CmdGmTalkCsReq" => Some(Self::CmdGmTalkCsReq),
            "CmdQueryProductInfoCsReq" => Some(Self::CmdQueryProductInfoCsReq),
            "CmdSetRedPointStatusScNotify" => Some(Self::CmdSetRedPointStatusScNotify),
            "CmdGetLevelRewardCsReq" => Some(Self::CmdGetLevelRewardCsReq),
            "CmdGetHeroBasicTypeInfoScRsp" => Some(Self::CmdGetHeroBasicTypeInfoScRsp),
            "CmdGetLevelRewardScRsp" => Some(Self::CmdGetLevelRewardScRsp),
            "CmdPlayerHeartBeatCsReq" => Some(Self::CmdPlayerHeartBeatCsReq),
            "CmdGetSecretKeyInfoCsReq" => Some(Self::CmdGetSecretKeyInfoCsReq),
            "CmdGetBasicInfoScRsp" => Some(Self::CmdGetBasicInfoScRsp),
            "CmdGmTalkScNotify" => Some(Self::CmdGmTalkScNotify),
            "CmdSetPlayerInfoCsReq" => Some(Self::CmdSetPlayerInfoCsReq),
            "CmdMonthCardRewardNotify" => Some(Self::CmdMonthCardRewardNotify),
            "CmdGetVideoVersionKeyCsReq" => Some(Self::CmdGetVideoVersionKeyCsReq),
            "CmdServerAnnounceNotify" => Some(Self::CmdServerAnnounceNotify),
            "CmdUpdateFeatureSwitchScNotify" => {
                Some(Self::CmdUpdateFeatureSwitchScNotify)
            }
            "CmdSetHeroBasicTypeScRsp" => Some(Self::CmdSetHeroBasicTypeScRsp),
            "CmdSetLanguageScRsp" => Some(Self::CmdSetLanguageScRsp),
            "CmdPlayerLoginFinishCsReq" => Some(Self::CmdPlayerLoginFinishCsReq),
            "CmdExchangeStaminaCsReq" => Some(Self::CmdExchangeStaminaCsReq),
            "CmdDailyRefreshNotify" => Some(Self::CmdDailyRefreshNotify),
            "CmdPlayerLoginFinishScRsp" => Some(Self::CmdPlayerLoginFinishScRsp),
            "CmdGetHeroBasicTypeInfoCsReq" => Some(Self::CmdGetHeroBasicTypeInfoCsReq),
            "CmdGetVideoVersionKeyScRsp" => Some(Self::CmdGetVideoVersionKeyScRsp),
            "CmdClientObjDownloadDataScNotify" => {
                Some(Self::CmdClientObjDownloadDataScNotify)
            }
            "CmdGmTalkScRsp" => Some(Self::CmdGmTalkScRsp),
            "CmdUpdatePlayerSettingCsReq" => Some(Self::CmdUpdatePlayerSettingCsReq),
            "CmdClientObjUploadCsReq" => Some(Self::CmdClientObjUploadCsReq),
            "CmdClientObjUploadScRsp" => Some(Self::CmdClientObjUploadScRsp),
            "CmdGateServerScNotify" => Some(Self::CmdGateServerScNotify),
            "CmdSetGenderCsReq" => Some(Self::CmdSetGenderCsReq),
            "CmdExchangeStaminaScRsp" => Some(Self::CmdExchangeStaminaScRsp),
            "CmdGetAuthkeyCsReq" => Some(Self::CmdGetAuthkeyCsReq),
            "CmdSetGenderScRsp" => Some(Self::CmdSetGenderScRsp),
            "CmdGetLevelRewardTakenListScRsp" => {
                Some(Self::CmdGetLevelRewardTakenListScRsp)
            }
            "CmdSetLanguageCsReq" => Some(Self::CmdSetLanguageCsReq),
            "CmdGetBasicInfoCsReq" => Some(Self::CmdGetBasicInfoCsReq),
            "CmdAceAntiCheaterScRsp" => Some(Self::CmdAceAntiCheaterScRsp),
            "CmdPlayerKickOutScNotify" => Some(Self::CmdPlayerKickOutScNotify),
            "CmdSetPlayerInfoScRsp" => Some(Self::CmdSetPlayerInfoScRsp),
            "CmdRegionStopScNotify" => Some(Self::CmdRegionStopScNotify),
            "CmdSetHeroBasicTypeCsReq" => Some(Self::CmdSetHeroBasicTypeCsReq),
            "CmdSetGameplayBirthdayScRsp" => Some(Self::CmdSetGameplayBirthdayScRsp),
            "CmdPlayerHeartBeatScRsp" => Some(Self::CmdPlayerHeartBeatScRsp),
            "CmdGetAuthkeyScRsp" => Some(Self::CmdGetAuthkeyScRsp),
            "CmdSetNicknameCsReq" => Some(Self::CmdSetNicknameCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum AuthkeySignType {
    None = 0,
    Default = 1,
    Rsa = 2,
}
impl AuthkeySignType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            AuthkeySignType::None => "AUTHKEY_SIGN_TYPE_NONE",
            AuthkeySignType::Default => "AUTHKEY_SIGN_TYPE_DEFAULT",
            AuthkeySignType::Rsa => "AUTHKEY_SIGN_TYPE_RSA",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "AUTHKEY_SIGN_TYPE_NONE" => Some(Self::None),
            "AUTHKEY_SIGN_TYPE_DEFAULT" => Some(Self::Default),
            "AUTHKEY_SIGN_TYPE_RSA" => Some(Self::Rsa),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Achkcddkkkj {
    CmdPlayerBoardTypeNone = 0,
    CmdGetPlayerBoardDataCsReq = 2834,
    CmdSetIsDisplayAvatarInfoCsReq = 2819,
    CmdSetDisplayAvatarScRsp = 2809,
    CmdSetSignatureCsReq = 2829,
    CmdSetHeadIconScRsp = 2888,
    CmdSetDisplayAvatarCsReq = 2802,
    CmdSetAssistAvatarScRsp = 2896,
    CmdSetIsDisplayAvatarInfoScRsp = 2843,
    CmdSetHeadIconCsReq = 2862,
    CmdSetAssistAvatarCsReq = 2868,
    CmdUnlockHeadIconScNotify = 2886,
    CmdSetSignatureScRsp = 2845,
    CmdGetPlayerBoardDataScRsp = 2848,
}
impl Achkcddkkkj {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Achkcddkkkj::CmdPlayerBoardTypeNone => "CmdPlayerBoardTypeNone",
            Achkcddkkkj::CmdGetPlayerBoardDataCsReq => "CmdGetPlayerBoardDataCsReq",
            Achkcddkkkj::CmdSetIsDisplayAvatarInfoCsReq => {
                "CmdSetIsDisplayAvatarInfoCsReq"
            }
            Achkcddkkkj::CmdSetDisplayAvatarScRsp => "CmdSetDisplayAvatarScRsp",
            Achkcddkkkj::CmdSetSignatureCsReq => "CmdSetSignatureCsReq",
            Achkcddkkkj::CmdSetHeadIconScRsp => "CmdSetHeadIconScRsp",
            Achkcddkkkj::CmdSetDisplayAvatarCsReq => "CmdSetDisplayAvatarCsReq",
            Achkcddkkkj::CmdSetAssistAvatarScRsp => "CmdSetAssistAvatarScRsp",
            Achkcddkkkj::CmdSetIsDisplayAvatarInfoScRsp => {
                "CmdSetIsDisplayAvatarInfoScRsp"
            }
            Achkcddkkkj::CmdSetHeadIconCsReq => "CmdSetHeadIconCsReq",
            Achkcddkkkj::CmdSetAssistAvatarCsReq => "CmdSetAssistAvatarCsReq",
            Achkcddkkkj::CmdUnlockHeadIconScNotify => "CmdUnlockHeadIconScNotify",
            Achkcddkkkj::CmdSetSignatureScRsp => "CmdSetSignatureScRsp",
            Achkcddkkkj::CmdGetPlayerBoardDataScRsp => "CmdGetPlayerBoardDataScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdPlayerBoardTypeNone" => Some(Self::CmdPlayerBoardTypeNone),
            "CmdGetPlayerBoardDataCsReq" => Some(Self::CmdGetPlayerBoardDataCsReq),
            "CmdSetIsDisplayAvatarInfoCsReq" => {
                Some(Self::CmdSetIsDisplayAvatarInfoCsReq)
            }
            "CmdSetDisplayAvatarScRsp" => Some(Self::CmdSetDisplayAvatarScRsp),
            "CmdSetSignatureCsReq" => Some(Self::CmdSetSignatureCsReq),
            "CmdSetHeadIconScRsp" => Some(Self::CmdSetHeadIconScRsp),
            "CmdSetDisplayAvatarCsReq" => Some(Self::CmdSetDisplayAvatarCsReq),
            "CmdSetAssistAvatarScRsp" => Some(Self::CmdSetAssistAvatarScRsp),
            "CmdSetIsDisplayAvatarInfoScRsp" => {
                Some(Self::CmdSetIsDisplayAvatarInfoScRsp)
            }
            "CmdSetHeadIconCsReq" => Some(Self::CmdSetHeadIconCsReq),
            "CmdSetAssistAvatarCsReq" => Some(Self::CmdSetAssistAvatarCsReq),
            "CmdUnlockHeadIconScNotify" => Some(Self::CmdUnlockHeadIconScNotify),
            "CmdSetSignatureScRsp" => Some(Self::CmdSetSignatureScRsp),
            "CmdGetPlayerBoardDataScRsp" => Some(Self::CmdGetPlayerBoardDataScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Bancodieeof {
    CmdPlayerReturnTypeNone = 0,
    CmdPlayerReturnInfoQueryCsReq = 4586,
    CmdPlayerReturnTakeRewardCsReq = 4519,
    CmdPlayerReturnSignCsReq = 4548,
    CmdPlayerReturnInfoQueryScRsp = 4529,
    CmdPlayerReturnTakeRewardScRsp = 4543,
    CmdPlayerReturnTakePointRewardCsReq = 4502,
    CmdPlayerReturnTakePointRewardScRsp = 4509,
    CmdPlayerReturnStartScNotify = 4534,
    CmdPlayerReturnPointChangeScNotify = 4588,
    CmdPlayerReturnForceFinishScNotify = 4545,
    CmdPlayerReturnSignScRsp = 4562,
}
impl Bancodieeof {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Bancodieeof::CmdPlayerReturnTypeNone => "CmdPlayerReturnTypeNone",
            Bancodieeof::CmdPlayerReturnInfoQueryCsReq => "CmdPlayerReturnInfoQueryCsReq",
            Bancodieeof::CmdPlayerReturnTakeRewardCsReq => {
                "CmdPlayerReturnTakeRewardCsReq"
            }
            Bancodieeof::CmdPlayerReturnSignCsReq => "CmdPlayerReturnSignCsReq",
            Bancodieeof::CmdPlayerReturnInfoQueryScRsp => "CmdPlayerReturnInfoQueryScRsp",
            Bancodieeof::CmdPlayerReturnTakeRewardScRsp => {
                "CmdPlayerReturnTakeRewardScRsp"
            }
            Bancodieeof::CmdPlayerReturnTakePointRewardCsReq => {
                "CmdPlayerReturnTakePointRewardCsReq"
            }
            Bancodieeof::CmdPlayerReturnTakePointRewardScRsp => {
                "CmdPlayerReturnTakePointRewardScRsp"
            }
            Bancodieeof::CmdPlayerReturnStartScNotify => "CmdPlayerReturnStartScNotify",
            Bancodieeof::CmdPlayerReturnPointChangeScNotify => {
                "CmdPlayerReturnPointChangeScNotify"
            }
            Bancodieeof::CmdPlayerReturnForceFinishScNotify => {
                "CmdPlayerReturnForceFinishScNotify"
            }
            Bancodieeof::CmdPlayerReturnSignScRsp => "CmdPlayerReturnSignScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdPlayerReturnTypeNone" => Some(Self::CmdPlayerReturnTypeNone),
            "CmdPlayerReturnInfoQueryCsReq" => Some(Self::CmdPlayerReturnInfoQueryCsReq),
            "CmdPlayerReturnTakeRewardCsReq" => {
                Some(Self::CmdPlayerReturnTakeRewardCsReq)
            }
            "CmdPlayerReturnSignCsReq" => Some(Self::CmdPlayerReturnSignCsReq),
            "CmdPlayerReturnInfoQueryScRsp" => Some(Self::CmdPlayerReturnInfoQueryScRsp),
            "CmdPlayerReturnTakeRewardScRsp" => {
                Some(Self::CmdPlayerReturnTakeRewardScRsp)
            }
            "CmdPlayerReturnTakePointRewardCsReq" => {
                Some(Self::CmdPlayerReturnTakePointRewardCsReq)
            }
            "CmdPlayerReturnTakePointRewardScRsp" => {
                Some(Self::CmdPlayerReturnTakePointRewardScRsp)
            }
            "CmdPlayerReturnStartScNotify" => Some(Self::CmdPlayerReturnStartScNotify),
            "CmdPlayerReturnPointChangeScNotify" => {
                Some(Self::CmdPlayerReturnPointChangeScNotify)
            }
            "CmdPlayerReturnForceFinishScNotify" => {
                Some(Self::CmdPlayerReturnForceFinishScNotify)
            }
            "CmdPlayerReturnSignScRsp" => Some(Self::CmdPlayerReturnSignScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Ipepfhojabf {
    PlayerReturnNone = 0,
    PlayerReturnProcessing = 1,
    PlayerReturnFinish = 2,
}
impl Ipepfhojabf {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Ipepfhojabf::PlayerReturnNone => "PLAYER_RETURN_NONE",
            Ipepfhojabf::PlayerReturnProcessing => "PLAYER_RETURN_PROCESSING",
            Ipepfhojabf::PlayerReturnFinish => "PLAYER_RETURN_FINISH",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "PLAYER_RETURN_NONE" => Some(Self::PlayerReturnNone),
            "PLAYER_RETURN_PROCESSING" => Some(Self::PlayerReturnProcessing),
            "PLAYER_RETURN_FINISH" => Some(Self::PlayerReturnFinish),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Gddndfadhli {
    CmdPlotTypeNone = 0,
    CmdFinishPlotScRsp = 1148,
    CmdFinishPlotCsReq = 1134,
}
impl Gddndfadhli {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Gddndfadhli::CmdPlotTypeNone => "CmdPlotTypeNone",
            Gddndfadhli::CmdFinishPlotScRsp => "CmdFinishPlotScRsp",
            Gddndfadhli::CmdFinishPlotCsReq => "CmdFinishPlotCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdPlotTypeNone" => Some(Self::CmdPlotTypeNone),
            "CmdFinishPlotScRsp" => Some(Self::CmdFinishPlotScRsp),
            "CmdFinishPlotCsReq" => Some(Self::CmdFinishPlotCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Bonhjmaglan {
    CmdPunkLordTypeNone = 0,
    CmdGetPunkLordMonsterDataCsReq = 3234,
    CmdStartPunkLordRaidScRsp = 3288,
    CmdSharePunkLordMonsterScRsp = 3209,
    CmdStartPunkLordRaidCsReq = 3262,
    CmdSummonPunkLordMonsterScRsp = 3243,
    CmdPunkLordMonsterInfoScNotify = 3233,
    CmdGetPunkLordBattleRecordCsReq = 3297,
    CmdTakeKilledPunkLordMonsterScoreCsReq = 3261,
    CmdGetKilledPunkLordMonsterDataCsReq = 3256,
    CmdSummonPunkLordMonsterCsReq = 3219,
    CmdPunkLordMonsterKilledNotify = 3228,
    CmdTakePunkLordPointRewardCsReq = 3296,
    CmdPunkLordRaidTimeOutScNotify = 3237,
    CmdGetKilledPunkLordMonsterDataScRsp = 3263,
    CmdPunkLordDataChangeNotify = 3291,
    CmdGetPunkLordDataCsReq = 3259,
    CmdPunkLordBattleResultScNotify = 3285,
    CmdGetPunkLordBattleRecordScRsp = 3224,
    CmdGetPunkLordMonsterDataScRsp = 3248,
    CmdTakeKilledPunkLordMonsterScoreScRsp = 3218,
    CmdTakePunkLordPointRewardScRsp = 3206,
    CmdSharePunkLordMonsterCsReq = 3202,
    CmdGetPunkLordDataScRsp = 3295,
}
impl Bonhjmaglan {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Bonhjmaglan::CmdPunkLordTypeNone => "CmdPunkLordTypeNone",
            Bonhjmaglan::CmdGetPunkLordMonsterDataCsReq => {
                "CmdGetPunkLordMonsterDataCsReq"
            }
            Bonhjmaglan::CmdStartPunkLordRaidScRsp => "CmdStartPunkLordRaidScRsp",
            Bonhjmaglan::CmdSharePunkLordMonsterScRsp => "CmdSharePunkLordMonsterScRsp",
            Bonhjmaglan::CmdStartPunkLordRaidCsReq => "CmdStartPunkLordRaidCsReq",
            Bonhjmaglan::CmdSummonPunkLordMonsterScRsp => "CmdSummonPunkLordMonsterScRsp",
            Bonhjmaglan::CmdPunkLordMonsterInfoScNotify => {
                "CmdPunkLordMonsterInfoScNotify"
            }
            Bonhjmaglan::CmdGetPunkLordBattleRecordCsReq => {
                "CmdGetPunkLordBattleRecordCsReq"
            }
            Bonhjmaglan::CmdTakeKilledPunkLordMonsterScoreCsReq => {
                "CmdTakeKilledPunkLordMonsterScoreCsReq"
            }
            Bonhjmaglan::CmdGetKilledPunkLordMonsterDataCsReq => {
                "CmdGetKilledPunkLordMonsterDataCsReq"
            }
            Bonhjmaglan::CmdSummonPunkLordMonsterCsReq => "CmdSummonPunkLordMonsterCsReq",
            Bonhjmaglan::CmdPunkLordMonsterKilledNotify => {
                "CmdPunkLordMonsterKilledNotify"
            }
            Bonhjmaglan::CmdTakePunkLordPointRewardCsReq => {
                "CmdTakePunkLordPointRewardCsReq"
            }
            Bonhjmaglan::CmdPunkLordRaidTimeOutScNotify => {
                "CmdPunkLordRaidTimeOutScNotify"
            }
            Bonhjmaglan::CmdGetKilledPunkLordMonsterDataScRsp => {
                "CmdGetKilledPunkLordMonsterDataScRsp"
            }
            Bonhjmaglan::CmdPunkLordDataChangeNotify => "CmdPunkLordDataChangeNotify",
            Bonhjmaglan::CmdGetPunkLordDataCsReq => "CmdGetPunkLordDataCsReq",
            Bonhjmaglan::CmdPunkLordBattleResultScNotify => {
                "CmdPunkLordBattleResultScNotify"
            }
            Bonhjmaglan::CmdGetPunkLordBattleRecordScRsp => {
                "CmdGetPunkLordBattleRecordScRsp"
            }
            Bonhjmaglan::CmdGetPunkLordMonsterDataScRsp => {
                "CmdGetPunkLordMonsterDataScRsp"
            }
            Bonhjmaglan::CmdTakeKilledPunkLordMonsterScoreScRsp => {
                "CmdTakeKilledPunkLordMonsterScoreScRsp"
            }
            Bonhjmaglan::CmdTakePunkLordPointRewardScRsp => {
                "CmdTakePunkLordPointRewardScRsp"
            }
            Bonhjmaglan::CmdSharePunkLordMonsterCsReq => "CmdSharePunkLordMonsterCsReq",
            Bonhjmaglan::CmdGetPunkLordDataScRsp => "CmdGetPunkLordDataScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdPunkLordTypeNone" => Some(Self::CmdPunkLordTypeNone),
            "CmdGetPunkLordMonsterDataCsReq" => {
                Some(Self::CmdGetPunkLordMonsterDataCsReq)
            }
            "CmdStartPunkLordRaidScRsp" => Some(Self::CmdStartPunkLordRaidScRsp),
            "CmdSharePunkLordMonsterScRsp" => Some(Self::CmdSharePunkLordMonsterScRsp),
            "CmdStartPunkLordRaidCsReq" => Some(Self::CmdStartPunkLordRaidCsReq),
            "CmdSummonPunkLordMonsterScRsp" => Some(Self::CmdSummonPunkLordMonsterScRsp),
            "CmdPunkLordMonsterInfoScNotify" => {
                Some(Self::CmdPunkLordMonsterInfoScNotify)
            }
            "CmdGetPunkLordBattleRecordCsReq" => {
                Some(Self::CmdGetPunkLordBattleRecordCsReq)
            }
            "CmdTakeKilledPunkLordMonsterScoreCsReq" => {
                Some(Self::CmdTakeKilledPunkLordMonsterScoreCsReq)
            }
            "CmdGetKilledPunkLordMonsterDataCsReq" => {
                Some(Self::CmdGetKilledPunkLordMonsterDataCsReq)
            }
            "CmdSummonPunkLordMonsterCsReq" => Some(Self::CmdSummonPunkLordMonsterCsReq),
            "CmdPunkLordMonsterKilledNotify" => {
                Some(Self::CmdPunkLordMonsterKilledNotify)
            }
            "CmdTakePunkLordPointRewardCsReq" => {
                Some(Self::CmdTakePunkLordPointRewardCsReq)
            }
            "CmdPunkLordRaidTimeOutScNotify" => {
                Some(Self::CmdPunkLordRaidTimeOutScNotify)
            }
            "CmdGetKilledPunkLordMonsterDataScRsp" => {
                Some(Self::CmdGetKilledPunkLordMonsterDataScRsp)
            }
            "CmdPunkLordDataChangeNotify" => Some(Self::CmdPunkLordDataChangeNotify),
            "CmdGetPunkLordDataCsReq" => Some(Self::CmdGetPunkLordDataCsReq),
            "CmdPunkLordBattleResultScNotify" => {
                Some(Self::CmdPunkLordBattleResultScNotify)
            }
            "CmdGetPunkLordBattleRecordScRsp" => {
                Some(Self::CmdGetPunkLordBattleRecordScRsp)
            }
            "CmdGetPunkLordMonsterDataScRsp" => {
                Some(Self::CmdGetPunkLordMonsterDataScRsp)
            }
            "CmdTakeKilledPunkLordMonsterScoreScRsp" => {
                Some(Self::CmdTakeKilledPunkLordMonsterScoreScRsp)
            }
            "CmdTakePunkLordPointRewardScRsp" => {
                Some(Self::CmdTakePunkLordPointRewardScRsp)
            }
            "CmdSharePunkLordMonsterCsReq" => Some(Self::CmdSharePunkLordMonsterCsReq),
            "CmdGetPunkLordDataScRsp" => Some(Self::CmdGetPunkLordDataScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum PunkLordOperationType {
    PunkLordOperationNone = 0,
    PunkLordOperationRefresh = 1,
    PunkLordOperationShare = 2,
    PunkLordOperationStartRaid = 3,
    PunkLordOperationGetBattleRecord = 4,
}
impl PunkLordOperationType {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            PunkLordOperationType::PunkLordOperationNone => "PUNK_LORD_OPERATION_NONE",
            PunkLordOperationType::PunkLordOperationRefresh => {
                "PUNK_LORD_OPERATION_REFRESH"
            }
            PunkLordOperationType::PunkLordOperationShare => "PUNK_LORD_OPERATION_SHARE",
            PunkLordOperationType::PunkLordOperationStartRaid => {
                "PUNK_LORD_OPERATION_START_RAID"
            }
            PunkLordOperationType::PunkLordOperationGetBattleRecord => {
                "PUNK_LORD_OPERATION_GET_BATTLE_RECORD"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "PUNK_LORD_OPERATION_NONE" => Some(Self::PunkLordOperationNone),
            "PUNK_LORD_OPERATION_REFRESH" => Some(Self::PunkLordOperationRefresh),
            "PUNK_LORD_OPERATION_SHARE" => Some(Self::PunkLordOperationShare),
            "PUNK_LORD_OPERATION_START_RAID" => Some(Self::PunkLordOperationStartRaid),
            "PUNK_LORD_OPERATION_GET_BATTLE_RECORD" => {
                Some(Self::PunkLordOperationGetBattleRecord)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Eegmjpcijbc {
    CmdQuestTypeNone = 0,
    CmdBatchGetQuestDataCsReq = 933,
    CmdTakeQuestOptionalRewardCsReq = 968,
    CmdQuestRecordScNotify = 986,
    CmdFinishQuestScRsp = 945,
    CmdGetQuestRecordCsReq = 919,
    CmdBatchGetQuestDataScRsp = 959,
    CmdFinishQuestCsReq = 929,
    CmdTakeQuestRewardScRsp = 988,
    CmdGetQuestDataCsReq = 934,
    CmdTakeQuestRewardCsReq = 962,
    CmdTakeQuestOptionalRewardScRsp = 996,
    CmdGetQuestRecordScRsp = 943,
    CmdGetQuestDataScRsp = 948,
}
impl Eegmjpcijbc {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Eegmjpcijbc::CmdQuestTypeNone => "CmdQuestTypeNone",
            Eegmjpcijbc::CmdBatchGetQuestDataCsReq => "CmdBatchGetQuestDataCsReq",
            Eegmjpcijbc::CmdTakeQuestOptionalRewardCsReq => {
                "CmdTakeQuestOptionalRewardCsReq"
            }
            Eegmjpcijbc::CmdQuestRecordScNotify => "CmdQuestRecordScNotify",
            Eegmjpcijbc::CmdFinishQuestScRsp => "CmdFinishQuestScRsp",
            Eegmjpcijbc::CmdGetQuestRecordCsReq => "CmdGetQuestRecordCsReq",
            Eegmjpcijbc::CmdBatchGetQuestDataScRsp => "CmdBatchGetQuestDataScRsp",
            Eegmjpcijbc::CmdFinishQuestCsReq => "CmdFinishQuestCsReq",
            Eegmjpcijbc::CmdTakeQuestRewardScRsp => "CmdTakeQuestRewardScRsp",
            Eegmjpcijbc::CmdGetQuestDataCsReq => "CmdGetQuestDataCsReq",
            Eegmjpcijbc::CmdTakeQuestRewardCsReq => "CmdTakeQuestRewardCsReq",
            Eegmjpcijbc::CmdTakeQuestOptionalRewardScRsp => {
                "CmdTakeQuestOptionalRewardScRsp"
            }
            Eegmjpcijbc::CmdGetQuestRecordScRsp => "CmdGetQuestRecordScRsp",
            Eegmjpcijbc::CmdGetQuestDataScRsp => "CmdGetQuestDataScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdQuestTypeNone" => Some(Self::CmdQuestTypeNone),
            "CmdBatchGetQuestDataCsReq" => Some(Self::CmdBatchGetQuestDataCsReq),
            "CmdTakeQuestOptionalRewardCsReq" => {
                Some(Self::CmdTakeQuestOptionalRewardCsReq)
            }
            "CmdQuestRecordScNotify" => Some(Self::CmdQuestRecordScNotify),
            "CmdFinishQuestScRsp" => Some(Self::CmdFinishQuestScRsp),
            "CmdGetQuestRecordCsReq" => Some(Self::CmdGetQuestRecordCsReq),
            "CmdBatchGetQuestDataScRsp" => Some(Self::CmdBatchGetQuestDataScRsp),
            "CmdFinishQuestCsReq" => Some(Self::CmdFinishQuestCsReq),
            "CmdTakeQuestRewardScRsp" => Some(Self::CmdTakeQuestRewardScRsp),
            "CmdGetQuestDataCsReq" => Some(Self::CmdGetQuestDataCsReq),
            "CmdTakeQuestRewardCsReq" => Some(Self::CmdTakeQuestRewardCsReq),
            "CmdTakeQuestOptionalRewardScRsp" => {
                Some(Self::CmdTakeQuestOptionalRewardScRsp)
            }
            "CmdGetQuestRecordScRsp" => Some(Self::CmdGetQuestRecordScRsp),
            "CmdGetQuestDataScRsp" => Some(Self::CmdGetQuestDataScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum QuestStatus {
    QuestNone = 0,
    QuestDoing = 1,
    QuestFinish = 2,
    QuestClose = 3,
    QuestDelete = 4,
}
impl QuestStatus {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            QuestStatus::QuestNone => "QUEST_NONE",
            QuestStatus::QuestDoing => "QUEST_DOING",
            QuestStatus::QuestFinish => "QUEST_FINISH",
            QuestStatus::QuestClose => "QUEST_CLOSE",
            QuestStatus::QuestDelete => "QUEST_DELETE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "QUEST_NONE" => Some(Self::QuestNone),
            "QUEST_DOING" => Some(Self::QuestDoing),
            "QUEST_FINISH" => Some(Self::QuestFinish),
            "QUEST_CLOSE" => Some(Self::QuestClose),
            "QUEST_DELETE" => Some(Self::QuestDelete),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Pnjfenbhbhg {
    CmdRaidTypeNone = 0,
    CmdGetSaveRaidScRsp = 2259,
    CmdStartRaidCsReq = 2234,
    CmdSetClientRaidTargetCountCsReq = 2296,
    CmdGetRaidInfoCsReq = 2245,
    CmdStartRaidScRsp = 2248,
    CmdGetChallengeRaidInfoScRsp = 2219,
    CmdRaidInfoNotify = 2202,
    CmdGetRaidInfoScRsp = 2268,
    CmdLeaveRaidScRsp = 2288,
    CmdLeaveRaidCsReq = 2262,
    CmdGetAllSaveRaidScRsp = 2242,
    CmdGetSaveRaidCsReq = 2233,
    CmdTakeChallengeRaidRewardCsReq = 2243,
    CmdTakeChallengeRaidRewardScRsp = 2286,
    CmdChallengeRaidNotify = 2229,
    CmdDelSaveRaidScNotify = 2237,
    CmdRaidKickByServerScNotify = 2239,
    CmdSetClientRaidTargetCountScRsp = 2206,
    CmdGetChallengeRaidInfoCsReq = 2209,
    CmdGetAllSaveRaidCsReq = 2295,
}
impl Pnjfenbhbhg {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Pnjfenbhbhg::CmdRaidTypeNone => "CmdRaidTypeNone",
            Pnjfenbhbhg::CmdGetSaveRaidScRsp => "CmdGetSaveRaidScRsp",
            Pnjfenbhbhg::CmdStartRaidCsReq => "CmdStartRaidCsReq",
            Pnjfenbhbhg::CmdSetClientRaidTargetCountCsReq => {
                "CmdSetClientRaidTargetCountCsReq"
            }
            Pnjfenbhbhg::CmdGetRaidInfoCsReq => "CmdGetRaidInfoCsReq",
            Pnjfenbhbhg::CmdStartRaidScRsp => "CmdStartRaidScRsp",
            Pnjfenbhbhg::CmdGetChallengeRaidInfoScRsp => "CmdGetChallengeRaidInfoScRsp",
            Pnjfenbhbhg::CmdRaidInfoNotify => "CmdRaidInfoNotify",
            Pnjfenbhbhg::CmdGetRaidInfoScRsp => "CmdGetRaidInfoScRsp",
            Pnjfenbhbhg::CmdLeaveRaidScRsp => "CmdLeaveRaidScRsp",
            Pnjfenbhbhg::CmdLeaveRaidCsReq => "CmdLeaveRaidCsReq",
            Pnjfenbhbhg::CmdGetAllSaveRaidScRsp => "CmdGetAllSaveRaidScRsp",
            Pnjfenbhbhg::CmdGetSaveRaidCsReq => "CmdGetSaveRaidCsReq",
            Pnjfenbhbhg::CmdTakeChallengeRaidRewardCsReq => {
                "CmdTakeChallengeRaidRewardCsReq"
            }
            Pnjfenbhbhg::CmdTakeChallengeRaidRewardScRsp => {
                "CmdTakeChallengeRaidRewardScRsp"
            }
            Pnjfenbhbhg::CmdChallengeRaidNotify => "CmdChallengeRaidNotify",
            Pnjfenbhbhg::CmdDelSaveRaidScNotify => "CmdDelSaveRaidScNotify",
            Pnjfenbhbhg::CmdRaidKickByServerScNotify => "CmdRaidKickByServerScNotify",
            Pnjfenbhbhg::CmdSetClientRaidTargetCountScRsp => {
                "CmdSetClientRaidTargetCountScRsp"
            }
            Pnjfenbhbhg::CmdGetChallengeRaidInfoCsReq => "CmdGetChallengeRaidInfoCsReq",
            Pnjfenbhbhg::CmdGetAllSaveRaidCsReq => "CmdGetAllSaveRaidCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdRaidTypeNone" => Some(Self::CmdRaidTypeNone),
            "CmdGetSaveRaidScRsp" => Some(Self::CmdGetSaveRaidScRsp),
            "CmdStartRaidCsReq" => Some(Self::CmdStartRaidCsReq),
            "CmdSetClientRaidTargetCountCsReq" => {
                Some(Self::CmdSetClientRaidTargetCountCsReq)
            }
            "CmdGetRaidInfoCsReq" => Some(Self::CmdGetRaidInfoCsReq),
            "CmdStartRaidScRsp" => Some(Self::CmdStartRaidScRsp),
            "CmdGetChallengeRaidInfoScRsp" => Some(Self::CmdGetChallengeRaidInfoScRsp),
            "CmdRaidInfoNotify" => Some(Self::CmdRaidInfoNotify),
            "CmdGetRaidInfoScRsp" => Some(Self::CmdGetRaidInfoScRsp),
            "CmdLeaveRaidScRsp" => Some(Self::CmdLeaveRaidScRsp),
            "CmdLeaveRaidCsReq" => Some(Self::CmdLeaveRaidCsReq),
            "CmdGetAllSaveRaidScRsp" => Some(Self::CmdGetAllSaveRaidScRsp),
            "CmdGetSaveRaidCsReq" => Some(Self::CmdGetSaveRaidCsReq),
            "CmdTakeChallengeRaidRewardCsReq" => {
                Some(Self::CmdTakeChallengeRaidRewardCsReq)
            }
            "CmdTakeChallengeRaidRewardScRsp" => {
                Some(Self::CmdTakeChallengeRaidRewardScRsp)
            }
            "CmdChallengeRaidNotify" => Some(Self::CmdChallengeRaidNotify),
            "CmdDelSaveRaidScNotify" => Some(Self::CmdDelSaveRaidScNotify),
            "CmdRaidKickByServerScNotify" => Some(Self::CmdRaidKickByServerScNotify),
            "CmdSetClientRaidTargetCountScRsp" => {
                Some(Self::CmdSetClientRaidTargetCountScRsp)
            }
            "CmdGetChallengeRaidInfoCsReq" => Some(Self::CmdGetChallengeRaidInfoCsReq),
            "CmdGetAllSaveRaidCsReq" => Some(Self::CmdGetAllSaveRaidCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mdiocbehhbj {
    RaidStatusNone = 0,
    RaidStatusDoing = 1,
    RaidStatusFinish = 2,
    RaidStatusFailed = 3,
}
impl Mdiocbehhbj {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mdiocbehhbj::RaidStatusNone => "RAID_STATUS_NONE",
            Mdiocbehhbj::RaidStatusDoing => "RAID_STATUS_DOING",
            Mdiocbehhbj::RaidStatusFinish => "RAID_STATUS_FINISH",
            Mdiocbehhbj::RaidStatusFailed => "RAID_STATUS_FAILED",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "RAID_STATUS_NONE" => Some(Self::RaidStatusNone),
            "RAID_STATUS_DOING" => Some(Self::RaidStatusDoing),
            "RAID_STATUS_FINISH" => Some(Self::RaidStatusFinish),
            "RAID_STATUS_FAILED" => Some(Self::RaidStatusFailed),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Epcjmhhiifd {
    RaidTargetStatusNone = 0,
    RaidTargetStatusDoing = 1,
    RaidTargetStatusFinish = 2,
}
impl Epcjmhhiifd {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Epcjmhhiifd::RaidTargetStatusNone => "RAID_TARGET_STATUS_NONE",
            Epcjmhhiifd::RaidTargetStatusDoing => "RAID_TARGET_STATUS_DOING",
            Epcjmhhiifd::RaidTargetStatusFinish => "RAID_TARGET_STATUS_FINISH",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "RAID_TARGET_STATUS_NONE" => Some(Self::RaidTargetStatusNone),
            "RAID_TARGET_STATUS_DOING" => Some(Self::RaidTargetStatusDoing),
            "RAID_TARGET_STATUS_FINISH" => Some(Self::RaidTargetStatusFinish),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mldgocoemih {
    RaidKickReasonNone = 0,
    RaidKickReasonActivityScheduleFinish = 1,
}
impl Mldgocoemih {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mldgocoemih::RaidKickReasonNone => "RAID_KICK_REASON_NONE",
            Mldgocoemih::RaidKickReasonActivityScheduleFinish => {
                "RAID_KICK_REASON_ACTIVITY_SCHEDULE_FINISH"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "RAID_KICK_REASON_NONE" => Some(Self::RaidKickReasonNone),
            "RAID_KICK_REASON_ACTIVITY_SCHEDULE_FINISH" => {
                Some(Self::RaidKickReasonActivityScheduleFinish)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Fgjkemenbom {
    CmdRaidCollectionTypeNone = 0,
    CmdRaidCollectionDataCsReq = 6941,
    CmdRaidCollectionDataScNotify = 6953,
    CmdRaidCollectionDataScRsp = 6958,
}
impl Fgjkemenbom {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Fgjkemenbom::CmdRaidCollectionTypeNone => "CmdRaidCollectionTypeNone",
            Fgjkemenbom::CmdRaidCollectionDataCsReq => "CmdRaidCollectionDataCsReq",
            Fgjkemenbom::CmdRaidCollectionDataScNotify => "CmdRaidCollectionDataScNotify",
            Fgjkemenbom::CmdRaidCollectionDataScRsp => "CmdRaidCollectionDataScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdRaidCollectionTypeNone" => Some(Self::CmdRaidCollectionTypeNone),
            "CmdRaidCollectionDataCsReq" => Some(Self::CmdRaidCollectionDataCsReq),
            "CmdRaidCollectionDataScNotify" => Some(Self::CmdRaidCollectionDataScNotify),
            "CmdRaidCollectionDataScRsp" => Some(Self::CmdRaidCollectionDataScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Ghipcflcped {
    CmdRedDotTypeNone = 0,
    CmdGetAllRedDotDataScRsp = 5948,
    CmdUpdateRedDotDataCsReq = 5962,
    CmdUpdateRedDotDataScRsp = 5988,
    CmdGetSingleRedDotParamGroupCsReq = 5902,
    CmdGetSingleRedDotParamGroupScRsp = 5909,
    CmdGetAllRedDotDataCsReq = 5934,
}
impl Ghipcflcped {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Ghipcflcped::CmdRedDotTypeNone => "CmdRedDotTypeNone",
            Ghipcflcped::CmdGetAllRedDotDataScRsp => "CmdGetAllRedDotDataScRsp",
            Ghipcflcped::CmdUpdateRedDotDataCsReq => "CmdUpdateRedDotDataCsReq",
            Ghipcflcped::CmdUpdateRedDotDataScRsp => "CmdUpdateRedDotDataScRsp",
            Ghipcflcped::CmdGetSingleRedDotParamGroupCsReq => {
                "CmdGetSingleRedDotParamGroupCsReq"
            }
            Ghipcflcped::CmdGetSingleRedDotParamGroupScRsp => {
                "CmdGetSingleRedDotParamGroupScRsp"
            }
            Ghipcflcped::CmdGetAllRedDotDataCsReq => "CmdGetAllRedDotDataCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdRedDotTypeNone" => Some(Self::CmdRedDotTypeNone),
            "CmdGetAllRedDotDataScRsp" => Some(Self::CmdGetAllRedDotDataScRsp),
            "CmdUpdateRedDotDataCsReq" => Some(Self::CmdUpdateRedDotDataCsReq),
            "CmdUpdateRedDotDataScRsp" => Some(Self::CmdUpdateRedDotDataScRsp),
            "CmdGetSingleRedDotParamGroupCsReq" => {
                Some(Self::CmdGetSingleRedDotParamGroupCsReq)
            }
            "CmdGetSingleRedDotParamGroupScRsp" => {
                Some(Self::CmdGetSingleRedDotParamGroupScRsp)
            }
            "CmdGetAllRedDotDataCsReq" => Some(Self::CmdGetAllRedDotDataCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Geeklapjbhm {
    UpdateReddotNone = 0,
    UpdateReddotAdd = 1,
    UpdateReddotReplace = 2,
}
impl Geeklapjbhm {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Geeklapjbhm::UpdateReddotNone => "UPDATE_REDDOT_NONE",
            Geeklapjbhm::UpdateReddotAdd => "UPDATE_REDDOT_ADD",
            Geeklapjbhm::UpdateReddotReplace => "UPDATE_REDDOT_REPLACE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "UPDATE_REDDOT_NONE" => Some(Self::UpdateReddotNone),
            "UPDATE_REDDOT_ADD" => Some(Self::UpdateReddotAdd),
            "UPDATE_REDDOT_REPLACE" => Some(Self::UpdateReddotReplace),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Nnkafcdkmoc {
    CmdReplayTypeNone = 0,
    CmdGetReplayTokenScRsp = 3548,
    CmdGetReplayTokenCsReq = 3534,
    CmdGetPlayerReplayInfoCsReq = 3562,
    CmdGetPlayerReplayInfoScRsp = 3588,
}
impl Nnkafcdkmoc {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Nnkafcdkmoc::CmdReplayTypeNone => "CmdReplayTypeNone",
            Nnkafcdkmoc::CmdGetReplayTokenScRsp => "CmdGetReplayTokenScRsp",
            Nnkafcdkmoc::CmdGetReplayTokenCsReq => "CmdGetReplayTokenCsReq",
            Nnkafcdkmoc::CmdGetPlayerReplayInfoCsReq => "CmdGetPlayerReplayInfoCsReq",
            Nnkafcdkmoc::CmdGetPlayerReplayInfoScRsp => "CmdGetPlayerReplayInfoScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdReplayTypeNone" => Some(Self::CmdReplayTypeNone),
            "CmdGetReplayTokenScRsp" => Some(Self::CmdGetReplayTokenScRsp),
            "CmdGetReplayTokenCsReq" => Some(Self::CmdGetReplayTokenCsReq),
            "CmdGetPlayerReplayInfoCsReq" => Some(Self::CmdGetPlayerReplayInfoCsReq),
            "CmdGetPlayerReplayInfoScRsp" => Some(Self::CmdGetPlayerReplayInfoScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Hmnbojnkleh {
    CmdRndOptionTypeNone = 0,
    CmdGetRndOptionCsReq = 3434,
    CmdDailyFirstMeetPamScRsp = 3488,
    CmdDailyFirstMeetPamCsReq = 3462,
    CmdGetRndOptionScRsp = 3448,
}
impl Hmnbojnkleh {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Hmnbojnkleh::CmdRndOptionTypeNone => "CmdRndOptionTypeNone",
            Hmnbojnkleh::CmdGetRndOptionCsReq => "CmdGetRndOptionCsReq",
            Hmnbojnkleh::CmdDailyFirstMeetPamScRsp => "CmdDailyFirstMeetPamScRsp",
            Hmnbojnkleh::CmdDailyFirstMeetPamCsReq => "CmdDailyFirstMeetPamCsReq",
            Hmnbojnkleh::CmdGetRndOptionScRsp => "CmdGetRndOptionScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdRndOptionTypeNone" => Some(Self::CmdRndOptionTypeNone),
            "CmdGetRndOptionCsReq" => Some(Self::CmdGetRndOptionCsReq),
            "CmdDailyFirstMeetPamScRsp" => Some(Self::CmdDailyFirstMeetPamScRsp),
            "CmdDailyFirstMeetPamCsReq" => Some(Self::CmdDailyFirstMeetPamCsReq),
            "CmdGetRndOptionScRsp" => Some(Self::CmdGetRndOptionScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Ddhbjcelmjp {
    CmdRogueTypeNone = 0,
    CmdSyncRogueVirtualItemInfoScNotify = 1836,
    CmdGetRogueTalentInfoCsReq = 1832,
    CmdEnterRogueMapRoomCsReq = 1825,
    CmdSyncRogueAeonScNotify = 1810,
    CmdSyncRogueRewardInfoScNotify = 1883,
    CmdQuitRogueCsReq = 1897,
    CmdGetRogueBuffEnhanceInfoScRsp = 1856,
    CmdEnhanceRogueBuffScRsp = 1801,
    CmdExchangeRogueRewardKeyCsReq = 1871,
    CmdSyncRogueAeonLevelUpRewardScNotify = 1820,
    CmdFinishRogueDialogueGroupCsReq = 1804,
    CmdEnableRogueTalentCsReq = 1874,
    CmdReviveRogueAvatarCsReq = 1837,
    CmdFinishAeonDialogueGroupCsReq = 1831,
    CmdGetRogueTalentInfoScRsp = 1838,
    CmdEnterRogueMapRoomScRsp = 1900,
    CmdGetRogueInitialScoreCsReq = 1865,
    CmdEnableRogueTalentScRsp = 1817,
    CmdFinishRogueDialogueGroupScRsp = 1875,
    CmdGetRogueDialogueEventDataCsReq = 1835,
    CmdSyncRogueReviveInfoScNotify = 1891,
    CmdPickRogueAvatarScRsp = 1895,
    CmdSyncRogueStatusScNotify = 1860,
    CmdGetRogueScoreRewardInfoScRsp = 1864,
    CmdOpenRogueChestScRsp = 1898,
    CmdGetRogueInfoCsReq = 1834,
    CmdEnterRogueScRsp = 1809,
    CmdGetRogueDialogueEventDataScRsp = 1844,
    CmdEnterRogueCsReq = 1802,
    CmdSelectRogueDialogueEventCsReq = 1815,
    CmdStartRogueScRsp = 1888,
    CmdGetRogueAeonInfoScRsp = 1827,
    CmdGetRogueInitialScoreScRsp = 1889,
    CmdOpenRogueChestCsReq = 1893,
    CmdGetRogueAeonInfoCsReq = 1847,
    CmdSyncRogueDialogueEventDataScNotify = 1813,
    CmdEnhanceRogueBuffCsReq = 1863,
    CmdReviveRogueAvatarScRsp = 1839,
    CmdStartRogueCsReq = 1862,
    CmdLeaveRogueScRsp = 1843,
    CmdLeaveRogueCsReq = 1819,
    CmdGetRogueInfoScRsp = 1848,
    CmdSelectRogueDialogueEventScRsp = 1872,
    CmdSyncRogueMapRoomScNotify = 1890,
    CmdSyncRogueExploreWinScNotify = 1811,
    CmdTakeRogueAeonLevelRewardScRsp = 1814,
    CmdGetRogueScoreRewardInfoCsReq = 1858,
    CmdTakeRogueAeonLevelRewardCsReq = 1899,
    CmdSyncRogueSeasonFinishScNotify = 1808,
    CmdTakeRogueScoreRewardCsReq = 1816,
    CmdSyncRogueGetItemScNotify = 1870,
    CmdExchangeRogueRewardKeyScRsp = 1849,
    CmdFinishAeonDialogueGroupScRsp = 1850,
    CmdSyncRoguePickAvatarInfoScNotify = 1880,
    CmdGetRogueBuffEnhanceInfoCsReq = 1885,
    CmdPickRogueAvatarCsReq = 1859,
    CmdSyncRogueFinishScNotify = 1833,
    CmdQuitRogueScRsp = 1824,
    CmdSyncRogueAreaUnlockScNotify = 1884,
    CmdTakeRogueScoreRewardScRsp = 1830,
}
impl Ddhbjcelmjp {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Ddhbjcelmjp::CmdRogueTypeNone => "CmdRogueTypeNone",
            Ddhbjcelmjp::CmdSyncRogueVirtualItemInfoScNotify => {
                "CmdSyncRogueVirtualItemInfoScNotify"
            }
            Ddhbjcelmjp::CmdGetRogueTalentInfoCsReq => "CmdGetRogueTalentInfoCsReq",
            Ddhbjcelmjp::CmdEnterRogueMapRoomCsReq => "CmdEnterRogueMapRoomCsReq",
            Ddhbjcelmjp::CmdSyncRogueAeonScNotify => "CmdSyncRogueAeonScNotify",
            Ddhbjcelmjp::CmdSyncRogueRewardInfoScNotify => {
                "CmdSyncRogueRewardInfoScNotify"
            }
            Ddhbjcelmjp::CmdQuitRogueCsReq => "CmdQuitRogueCsReq",
            Ddhbjcelmjp::CmdGetRogueBuffEnhanceInfoScRsp => {
                "CmdGetRogueBuffEnhanceInfoScRsp"
            }
            Ddhbjcelmjp::CmdEnhanceRogueBuffScRsp => "CmdEnhanceRogueBuffScRsp",
            Ddhbjcelmjp::CmdExchangeRogueRewardKeyCsReq => {
                "CmdExchangeRogueRewardKeyCsReq"
            }
            Ddhbjcelmjp::CmdSyncRogueAeonLevelUpRewardScNotify => {
                "CmdSyncRogueAeonLevelUpRewardScNotify"
            }
            Ddhbjcelmjp::CmdFinishRogueDialogueGroupCsReq => {
                "CmdFinishRogueDialogueGroupCsReq"
            }
            Ddhbjcelmjp::CmdEnableRogueTalentCsReq => "CmdEnableRogueTalentCsReq",
            Ddhbjcelmjp::CmdReviveRogueAvatarCsReq => "CmdReviveRogueAvatarCsReq",
            Ddhbjcelmjp::CmdFinishAeonDialogueGroupCsReq => {
                "CmdFinishAeonDialogueGroupCsReq"
            }
            Ddhbjcelmjp::CmdGetRogueTalentInfoScRsp => "CmdGetRogueTalentInfoScRsp",
            Ddhbjcelmjp::CmdEnterRogueMapRoomScRsp => "CmdEnterRogueMapRoomScRsp",
            Ddhbjcelmjp::CmdGetRogueInitialScoreCsReq => "CmdGetRogueInitialScoreCsReq",
            Ddhbjcelmjp::CmdEnableRogueTalentScRsp => "CmdEnableRogueTalentScRsp",
            Ddhbjcelmjp::CmdFinishRogueDialogueGroupScRsp => {
                "CmdFinishRogueDialogueGroupScRsp"
            }
            Ddhbjcelmjp::CmdGetRogueDialogueEventDataCsReq => {
                "CmdGetRogueDialogueEventDataCsReq"
            }
            Ddhbjcelmjp::CmdSyncRogueReviveInfoScNotify => {
                "CmdSyncRogueReviveInfoScNotify"
            }
            Ddhbjcelmjp::CmdPickRogueAvatarScRsp => "CmdPickRogueAvatarScRsp",
            Ddhbjcelmjp::CmdSyncRogueStatusScNotify => "CmdSyncRogueStatusScNotify",
            Ddhbjcelmjp::CmdGetRogueScoreRewardInfoScRsp => {
                "CmdGetRogueScoreRewardInfoScRsp"
            }
            Ddhbjcelmjp::CmdOpenRogueChestScRsp => "CmdOpenRogueChestScRsp",
            Ddhbjcelmjp::CmdGetRogueInfoCsReq => "CmdGetRogueInfoCsReq",
            Ddhbjcelmjp::CmdEnterRogueScRsp => "CmdEnterRogueScRsp",
            Ddhbjcelmjp::CmdGetRogueDialogueEventDataScRsp => {
                "CmdGetRogueDialogueEventDataScRsp"
            }
            Ddhbjcelmjp::CmdEnterRogueCsReq => "CmdEnterRogueCsReq",
            Ddhbjcelmjp::CmdSelectRogueDialogueEventCsReq => {
                "CmdSelectRogueDialogueEventCsReq"
            }
            Ddhbjcelmjp::CmdStartRogueScRsp => "CmdStartRogueScRsp",
            Ddhbjcelmjp::CmdGetRogueAeonInfoScRsp => "CmdGetRogueAeonInfoScRsp",
            Ddhbjcelmjp::CmdGetRogueInitialScoreScRsp => "CmdGetRogueInitialScoreScRsp",
            Ddhbjcelmjp::CmdOpenRogueChestCsReq => "CmdOpenRogueChestCsReq",
            Ddhbjcelmjp::CmdGetRogueAeonInfoCsReq => "CmdGetRogueAeonInfoCsReq",
            Ddhbjcelmjp::CmdSyncRogueDialogueEventDataScNotify => {
                "CmdSyncRogueDialogueEventDataScNotify"
            }
            Ddhbjcelmjp::CmdEnhanceRogueBuffCsReq => "CmdEnhanceRogueBuffCsReq",
            Ddhbjcelmjp::CmdReviveRogueAvatarScRsp => "CmdReviveRogueAvatarScRsp",
            Ddhbjcelmjp::CmdStartRogueCsReq => "CmdStartRogueCsReq",
            Ddhbjcelmjp::CmdLeaveRogueScRsp => "CmdLeaveRogueScRsp",
            Ddhbjcelmjp::CmdLeaveRogueCsReq => "CmdLeaveRogueCsReq",
            Ddhbjcelmjp::CmdGetRogueInfoScRsp => "CmdGetRogueInfoScRsp",
            Ddhbjcelmjp::CmdSelectRogueDialogueEventScRsp => {
                "CmdSelectRogueDialogueEventScRsp"
            }
            Ddhbjcelmjp::CmdSyncRogueMapRoomScNotify => "CmdSyncRogueMapRoomScNotify",
            Ddhbjcelmjp::CmdSyncRogueExploreWinScNotify => {
                "CmdSyncRogueExploreWinScNotify"
            }
            Ddhbjcelmjp::CmdTakeRogueAeonLevelRewardScRsp => {
                "CmdTakeRogueAeonLevelRewardScRsp"
            }
            Ddhbjcelmjp::CmdGetRogueScoreRewardInfoCsReq => {
                "CmdGetRogueScoreRewardInfoCsReq"
            }
            Ddhbjcelmjp::CmdTakeRogueAeonLevelRewardCsReq => {
                "CmdTakeRogueAeonLevelRewardCsReq"
            }
            Ddhbjcelmjp::CmdSyncRogueSeasonFinishScNotify => {
                "CmdSyncRogueSeasonFinishScNotify"
            }
            Ddhbjcelmjp::CmdTakeRogueScoreRewardCsReq => "CmdTakeRogueScoreRewardCsReq",
            Ddhbjcelmjp::CmdSyncRogueGetItemScNotify => "CmdSyncRogueGetItemScNotify",
            Ddhbjcelmjp::CmdExchangeRogueRewardKeyScRsp => {
                "CmdExchangeRogueRewardKeyScRsp"
            }
            Ddhbjcelmjp::CmdFinishAeonDialogueGroupScRsp => {
                "CmdFinishAeonDialogueGroupScRsp"
            }
            Ddhbjcelmjp::CmdSyncRoguePickAvatarInfoScNotify => {
                "CmdSyncRoguePickAvatarInfoScNotify"
            }
            Ddhbjcelmjp::CmdGetRogueBuffEnhanceInfoCsReq => {
                "CmdGetRogueBuffEnhanceInfoCsReq"
            }
            Ddhbjcelmjp::CmdPickRogueAvatarCsReq => "CmdPickRogueAvatarCsReq",
            Ddhbjcelmjp::CmdSyncRogueFinishScNotify => "CmdSyncRogueFinishScNotify",
            Ddhbjcelmjp::CmdQuitRogueScRsp => "CmdQuitRogueScRsp",
            Ddhbjcelmjp::CmdSyncRogueAreaUnlockScNotify => {
                "CmdSyncRogueAreaUnlockScNotify"
            }
            Ddhbjcelmjp::CmdTakeRogueScoreRewardScRsp => "CmdTakeRogueScoreRewardScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdRogueTypeNone" => Some(Self::CmdRogueTypeNone),
            "CmdSyncRogueVirtualItemInfoScNotify" => {
                Some(Self::CmdSyncRogueVirtualItemInfoScNotify)
            }
            "CmdGetRogueTalentInfoCsReq" => Some(Self::CmdGetRogueTalentInfoCsReq),
            "CmdEnterRogueMapRoomCsReq" => Some(Self::CmdEnterRogueMapRoomCsReq),
            "CmdSyncRogueAeonScNotify" => Some(Self::CmdSyncRogueAeonScNotify),
            "CmdSyncRogueRewardInfoScNotify" => {
                Some(Self::CmdSyncRogueRewardInfoScNotify)
            }
            "CmdQuitRogueCsReq" => Some(Self::CmdQuitRogueCsReq),
            "CmdGetRogueBuffEnhanceInfoScRsp" => {
                Some(Self::CmdGetRogueBuffEnhanceInfoScRsp)
            }
            "CmdEnhanceRogueBuffScRsp" => Some(Self::CmdEnhanceRogueBuffScRsp),
            "CmdExchangeRogueRewardKeyCsReq" => {
                Some(Self::CmdExchangeRogueRewardKeyCsReq)
            }
            "CmdSyncRogueAeonLevelUpRewardScNotify" => {
                Some(Self::CmdSyncRogueAeonLevelUpRewardScNotify)
            }
            "CmdFinishRogueDialogueGroupCsReq" => {
                Some(Self::CmdFinishRogueDialogueGroupCsReq)
            }
            "CmdEnableRogueTalentCsReq" => Some(Self::CmdEnableRogueTalentCsReq),
            "CmdReviveRogueAvatarCsReq" => Some(Self::CmdReviveRogueAvatarCsReq),
            "CmdFinishAeonDialogueGroupCsReq" => {
                Some(Self::CmdFinishAeonDialogueGroupCsReq)
            }
            "CmdGetRogueTalentInfoScRsp" => Some(Self::CmdGetRogueTalentInfoScRsp),
            "CmdEnterRogueMapRoomScRsp" => Some(Self::CmdEnterRogueMapRoomScRsp),
            "CmdGetRogueInitialScoreCsReq" => Some(Self::CmdGetRogueInitialScoreCsReq),
            "CmdEnableRogueTalentScRsp" => Some(Self::CmdEnableRogueTalentScRsp),
            "CmdFinishRogueDialogueGroupScRsp" => {
                Some(Self::CmdFinishRogueDialogueGroupScRsp)
            }
            "CmdGetRogueDialogueEventDataCsReq" => {
                Some(Self::CmdGetRogueDialogueEventDataCsReq)
            }
            "CmdSyncRogueReviveInfoScNotify" => {
                Some(Self::CmdSyncRogueReviveInfoScNotify)
            }
            "CmdPickRogueAvatarScRsp" => Some(Self::CmdPickRogueAvatarScRsp),
            "CmdSyncRogueStatusScNotify" => Some(Self::CmdSyncRogueStatusScNotify),
            "CmdGetRogueScoreRewardInfoScRsp" => {
                Some(Self::CmdGetRogueScoreRewardInfoScRsp)
            }
            "CmdOpenRogueChestScRsp" => Some(Self::CmdOpenRogueChestScRsp),
            "CmdGetRogueInfoCsReq" => Some(Self::CmdGetRogueInfoCsReq),
            "CmdEnterRogueScRsp" => Some(Self::CmdEnterRogueScRsp),
            "CmdGetRogueDialogueEventDataScRsp" => {
                Some(Self::CmdGetRogueDialogueEventDataScRsp)
            }
            "CmdEnterRogueCsReq" => Some(Self::CmdEnterRogueCsReq),
            "CmdSelectRogueDialogueEventCsReq" => {
                Some(Self::CmdSelectRogueDialogueEventCsReq)
            }
            "CmdStartRogueScRsp" => Some(Self::CmdStartRogueScRsp),
            "CmdGetRogueAeonInfoScRsp" => Some(Self::CmdGetRogueAeonInfoScRsp),
            "CmdGetRogueInitialScoreScRsp" => Some(Self::CmdGetRogueInitialScoreScRsp),
            "CmdOpenRogueChestCsReq" => Some(Self::CmdOpenRogueChestCsReq),
            "CmdGetRogueAeonInfoCsReq" => Some(Self::CmdGetRogueAeonInfoCsReq),
            "CmdSyncRogueDialogueEventDataScNotify" => {
                Some(Self::CmdSyncRogueDialogueEventDataScNotify)
            }
            "CmdEnhanceRogueBuffCsReq" => Some(Self::CmdEnhanceRogueBuffCsReq),
            "CmdReviveRogueAvatarScRsp" => Some(Self::CmdReviveRogueAvatarScRsp),
            "CmdStartRogueCsReq" => Some(Self::CmdStartRogueCsReq),
            "CmdLeaveRogueScRsp" => Some(Self::CmdLeaveRogueScRsp),
            "CmdLeaveRogueCsReq" => Some(Self::CmdLeaveRogueCsReq),
            "CmdGetRogueInfoScRsp" => Some(Self::CmdGetRogueInfoScRsp),
            "CmdSelectRogueDialogueEventScRsp" => {
                Some(Self::CmdSelectRogueDialogueEventScRsp)
            }
            "CmdSyncRogueMapRoomScNotify" => Some(Self::CmdSyncRogueMapRoomScNotify),
            "CmdSyncRogueExploreWinScNotify" => {
                Some(Self::CmdSyncRogueExploreWinScNotify)
            }
            "CmdTakeRogueAeonLevelRewardScRsp" => {
                Some(Self::CmdTakeRogueAeonLevelRewardScRsp)
            }
            "CmdGetRogueScoreRewardInfoCsReq" => {
                Some(Self::CmdGetRogueScoreRewardInfoCsReq)
            }
            "CmdTakeRogueAeonLevelRewardCsReq" => {
                Some(Self::CmdTakeRogueAeonLevelRewardCsReq)
            }
            "CmdSyncRogueSeasonFinishScNotify" => {
                Some(Self::CmdSyncRogueSeasonFinishScNotify)
            }
            "CmdTakeRogueScoreRewardCsReq" => Some(Self::CmdTakeRogueScoreRewardCsReq),
            "CmdSyncRogueGetItemScNotify" => Some(Self::CmdSyncRogueGetItemScNotify),
            "CmdExchangeRogueRewardKeyScRsp" => {
                Some(Self::CmdExchangeRogueRewardKeyScRsp)
            }
            "CmdFinishAeonDialogueGroupScRsp" => {
                Some(Self::CmdFinishAeonDialogueGroupScRsp)
            }
            "CmdSyncRoguePickAvatarInfoScNotify" => {
                Some(Self::CmdSyncRoguePickAvatarInfoScNotify)
            }
            "CmdGetRogueBuffEnhanceInfoCsReq" => {
                Some(Self::CmdGetRogueBuffEnhanceInfoCsReq)
            }
            "CmdPickRogueAvatarCsReq" => Some(Self::CmdPickRogueAvatarCsReq),
            "CmdSyncRogueFinishScNotify" => Some(Self::CmdSyncRogueFinishScNotify),
            "CmdQuitRogueScRsp" => Some(Self::CmdQuitRogueScRsp),
            "CmdSyncRogueAreaUnlockScNotify" => {
                Some(Self::CmdSyncRogueAreaUnlockScNotify)
            }
            "CmdTakeRogueScoreRewardScRsp" => Some(Self::CmdTakeRogueScoreRewardScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mlcdpmiblbk {
    RogueStatusNone = 0,
    RogueStatusDoing = 1,
    RogueStatusPending = 2,
    RogueStatusEndless = 3,
    RogueStatusFinish = 4,
}
impl Mlcdpmiblbk {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mlcdpmiblbk::RogueStatusNone => "ROGUE_STATUS_NONE",
            Mlcdpmiblbk::RogueStatusDoing => "ROGUE_STATUS_DOING",
            Mlcdpmiblbk::RogueStatusPending => "ROGUE_STATUS_PENDING",
            Mlcdpmiblbk::RogueStatusEndless => "ROGUE_STATUS_ENDLESS",
            Mlcdpmiblbk::RogueStatusFinish => "ROGUE_STATUS_FINISH",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_STATUS_NONE" => Some(Self::RogueStatusNone),
            "ROGUE_STATUS_DOING" => Some(Self::RogueStatusDoing),
            "ROGUE_STATUS_PENDING" => Some(Self::RogueStatusPending),
            "ROGUE_STATUS_ENDLESS" => Some(Self::RogueStatusEndless),
            "ROGUE_STATUS_FINISH" => Some(Self::RogueStatusFinish),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Nhcljljbnac {
    RogueRoomStatusNone = 0,
    RogueRoomStatusLock = 1,
    RogueRoomStatusUnlock = 2,
    RogueRoomStatusPlay = 3,
    RogueRoomStatusFinish = 4,
}
impl Nhcljljbnac {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Nhcljljbnac::RogueRoomStatusNone => "ROGUE_ROOM_STATUS_NONE",
            Nhcljljbnac::RogueRoomStatusLock => "ROGUE_ROOM_STATUS_LOCK",
            Nhcljljbnac::RogueRoomStatusUnlock => "ROGUE_ROOM_STATUS_UNLOCK",
            Nhcljljbnac::RogueRoomStatusPlay => "ROGUE_ROOM_STATUS_PLAY",
            Nhcljljbnac::RogueRoomStatusFinish => "ROGUE_ROOM_STATUS_FINISH",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_ROOM_STATUS_NONE" => Some(Self::RogueRoomStatusNone),
            "ROGUE_ROOM_STATUS_LOCK" => Some(Self::RogueRoomStatusLock),
            "ROGUE_ROOM_STATUS_UNLOCK" => Some(Self::RogueRoomStatusUnlock),
            "ROGUE_ROOM_STATUS_PLAY" => Some(Self::RogueRoomStatusPlay),
            "ROGUE_ROOM_STATUS_FINISH" => Some(Self::RogueRoomStatusFinish),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Efhdeoklmfi {
    RogueAreaStatusLock = 0,
    RogueAreaStatusUnlock = 1,
    RogueAreaStatusFirstPass = 2,
    RogueAreaStatusClose = 3,
}
impl Efhdeoklmfi {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Efhdeoklmfi::RogueAreaStatusLock => "ROGUE_AREA_STATUS_LOCK",
            Efhdeoklmfi::RogueAreaStatusUnlock => "ROGUE_AREA_STATUS_UNLOCK",
            Efhdeoklmfi::RogueAreaStatusFirstPass => "ROGUE_AREA_STATUS_FIRST_PASS",
            Efhdeoklmfi::RogueAreaStatusClose => "ROGUE_AREA_STATUS_CLOSE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_AREA_STATUS_LOCK" => Some(Self::RogueAreaStatusLock),
            "ROGUE_AREA_STATUS_UNLOCK" => Some(Self::RogueAreaStatusUnlock),
            "ROGUE_AREA_STATUS_FIRST_PASS" => Some(Self::RogueAreaStatusFirstPass),
            "ROGUE_AREA_STATUS_CLOSE" => Some(Self::RogueAreaStatusClose),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Gchociecpbp {
    RogueBuffSourceTypeNone = 0,
    RogueBuffSourceTypeSelect = 1,
    RogueBuffSourceTypeEnhance = 2,
    RogueBuffSourceTypeMiracle = 3,
    RogueBuffSourceTypeDialogue = 4,
    RogueBuffSourceTypeBonus = 5,
    RogueBuffSourceTypeMazeSkill = 6,
    RogueBuffSourceTypeShop = 7,
    RogueBuffSourceTypeLevelMechanism = 8,
    RogueBuffSourceTypeEndlessLevelStart = 9,
}
impl Gchociecpbp {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Gchociecpbp::RogueBuffSourceTypeNone => "ROGUE_BUFF_SOURCE_TYPE_NONE",
            Gchociecpbp::RogueBuffSourceTypeSelect => "ROGUE_BUFF_SOURCE_TYPE_SELECT",
            Gchociecpbp::RogueBuffSourceTypeEnhance => "ROGUE_BUFF_SOURCE_TYPE_ENHANCE",
            Gchociecpbp::RogueBuffSourceTypeMiracle => "ROGUE_BUFF_SOURCE_TYPE_MIRACLE",
            Gchociecpbp::RogueBuffSourceTypeDialogue => "ROGUE_BUFF_SOURCE_TYPE_DIALOGUE",
            Gchociecpbp::RogueBuffSourceTypeBonus => "ROGUE_BUFF_SOURCE_TYPE_BONUS",
            Gchociecpbp::RogueBuffSourceTypeMazeSkill => {
                "ROGUE_BUFF_SOURCE_TYPE_MAZE_SKILL"
            }
            Gchociecpbp::RogueBuffSourceTypeShop => "ROGUE_BUFF_SOURCE_TYPE_SHOP",
            Gchociecpbp::RogueBuffSourceTypeLevelMechanism => {
                "ROGUE_BUFF_SOURCE_TYPE_LEVEL_MECHANISM"
            }
            Gchociecpbp::RogueBuffSourceTypeEndlessLevelStart => {
                "ROGUE_BUFF_SOURCE_TYPE_ENDLESS_LEVEL_START"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_BUFF_SOURCE_TYPE_NONE" => Some(Self::RogueBuffSourceTypeNone),
            "ROGUE_BUFF_SOURCE_TYPE_SELECT" => Some(Self::RogueBuffSourceTypeSelect),
            "ROGUE_BUFF_SOURCE_TYPE_ENHANCE" => Some(Self::RogueBuffSourceTypeEnhance),
            "ROGUE_BUFF_SOURCE_TYPE_MIRACLE" => Some(Self::RogueBuffSourceTypeMiracle),
            "ROGUE_BUFF_SOURCE_TYPE_DIALOGUE" => Some(Self::RogueBuffSourceTypeDialogue),
            "ROGUE_BUFF_SOURCE_TYPE_BONUS" => Some(Self::RogueBuffSourceTypeBonus),
            "ROGUE_BUFF_SOURCE_TYPE_MAZE_SKILL" => {
                Some(Self::RogueBuffSourceTypeMazeSkill)
            }
            "ROGUE_BUFF_SOURCE_TYPE_SHOP" => Some(Self::RogueBuffSourceTypeShop),
            "ROGUE_BUFF_SOURCE_TYPE_LEVEL_MECHANISM" => {
                Some(Self::RogueBuffSourceTypeLevelMechanism)
            }
            "ROGUE_BUFF_SOURCE_TYPE_ENDLESS_LEVEL_START" => {
                Some(Self::RogueBuffSourceTypeEndlessLevelStart)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Emlajepdgnp {
    RogueMiracleSourceTypeNone = 0,
    RogueMiracleSourceTypeSelect = 1,
    RogueMiracleSourceTypeDialogue = 2,
    RogueMiracleSourceTypeBonus = 3,
    RogueMiracleSourceTypeUse = 4,
    RogueMiracleSourceTypeReset = 5,
    RogueMiracleSourceTypeReplace = 6,
    RogueMiracleSourceTypeTrade = 7,
    RogueMiracleSourceTypeGet = 8,
    RogueMiracleSourceTypeShop = 9,
    RogueMiracleSourceTypeMazeSkill = 10,
    RogueMiracleSourceTypeLevelMechanism = 11,
    RogueMiracleSourceTypeEndlessLevelStart = 12,
}
impl Emlajepdgnp {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Emlajepdgnp::RogueMiracleSourceTypeNone => "ROGUE_MIRACLE_SOURCE_TYPE_NONE",
            Emlajepdgnp::RogueMiracleSourceTypeSelect => {
                "ROGUE_MIRACLE_SOURCE_TYPE_SELECT"
            }
            Emlajepdgnp::RogueMiracleSourceTypeDialogue => {
                "ROGUE_MIRACLE_SOURCE_TYPE_DIALOGUE"
            }
            Emlajepdgnp::RogueMiracleSourceTypeBonus => "ROGUE_MIRACLE_SOURCE_TYPE_BONUS",
            Emlajepdgnp::RogueMiracleSourceTypeUse => "ROGUE_MIRACLE_SOURCE_TYPE_USE",
            Emlajepdgnp::RogueMiracleSourceTypeReset => "ROGUE_MIRACLE_SOURCE_TYPE_RESET",
            Emlajepdgnp::RogueMiracleSourceTypeReplace => {
                "ROGUE_MIRACLE_SOURCE_TYPE_REPLACE"
            }
            Emlajepdgnp::RogueMiracleSourceTypeTrade => "ROGUE_MIRACLE_SOURCE_TYPE_TRADE",
            Emlajepdgnp::RogueMiracleSourceTypeGet => "ROGUE_MIRACLE_SOURCE_TYPE_GET",
            Emlajepdgnp::RogueMiracleSourceTypeShop => "ROGUE_MIRACLE_SOURCE_TYPE_SHOP",
            Emlajepdgnp::RogueMiracleSourceTypeMazeSkill => {
                "ROGUE_MIRACLE_SOURCE_TYPE_MAZE_SKILL"
            }
            Emlajepdgnp::RogueMiracleSourceTypeLevelMechanism => {
                "ROGUE_MIRACLE_SOURCE_TYPE_LEVEL_MECHANISM"
            }
            Emlajepdgnp::RogueMiracleSourceTypeEndlessLevelStart => {
                "ROGUE_MIRACLE_SOURCE_TYPE_ENDLESS_LEVEL_START"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_MIRACLE_SOURCE_TYPE_NONE" => Some(Self::RogueMiracleSourceTypeNone),
            "ROGUE_MIRACLE_SOURCE_TYPE_SELECT" => {
                Some(Self::RogueMiracleSourceTypeSelect)
            }
            "ROGUE_MIRACLE_SOURCE_TYPE_DIALOGUE" => {
                Some(Self::RogueMiracleSourceTypeDialogue)
            }
            "ROGUE_MIRACLE_SOURCE_TYPE_BONUS" => Some(Self::RogueMiracleSourceTypeBonus),
            "ROGUE_MIRACLE_SOURCE_TYPE_USE" => Some(Self::RogueMiracleSourceTypeUse),
            "ROGUE_MIRACLE_SOURCE_TYPE_RESET" => Some(Self::RogueMiracleSourceTypeReset),
            "ROGUE_MIRACLE_SOURCE_TYPE_REPLACE" => {
                Some(Self::RogueMiracleSourceTypeReplace)
            }
            "ROGUE_MIRACLE_SOURCE_TYPE_TRADE" => Some(Self::RogueMiracleSourceTypeTrade),
            "ROGUE_MIRACLE_SOURCE_TYPE_GET" => Some(Self::RogueMiracleSourceTypeGet),
            "ROGUE_MIRACLE_SOURCE_TYPE_SHOP" => Some(Self::RogueMiracleSourceTypeShop),
            "ROGUE_MIRACLE_SOURCE_TYPE_MAZE_SKILL" => {
                Some(Self::RogueMiracleSourceTypeMazeSkill)
            }
            "ROGUE_MIRACLE_SOURCE_TYPE_LEVEL_MECHANISM" => {
                Some(Self::RogueMiracleSourceTypeLevelMechanism)
            }
            "ROGUE_MIRACLE_SOURCE_TYPE_ENDLESS_LEVEL_START" => {
                Some(Self::RogueMiracleSourceTypeEndlessLevelStart)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Pcpjccgafgb {
    RogueDialogueResultSucc = 0,
    RogueDialogueResultFail = 1,
}
impl Pcpjccgafgb {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Pcpjccgafgb::RogueDialogueResultSucc => "ROGUE_DIALOGUE_RESULT_SUCC",
            Pcpjccgafgb::RogueDialogueResultFail => "ROGUE_DIALOGUE_RESULT_FAIL",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_DIALOGUE_RESULT_SUCC" => Some(Self::RogueDialogueResultSucc),
            "ROGUE_DIALOGUE_RESULT_FAIL" => Some(Self::RogueDialogueResultFail),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Kfmpmaojchm {
    CmdRogueCommonTypeNone = 0,
    CmdSyncRogueCommonActionResultScNotify = 5667,
    CmdGetEnhanceCommonRogueBuffInfoCsReq = 5616,
    CmdGetRogueAdventureRoomInfoCsReq = 5606,
    CmdTakeRogueMiracleHandbookRewardCsReq = 5700,
    CmdGetEnhanceCommonRogueBuffInfoScRsp = 5630,
    CmdTakeRogueEventHandbookRewardScRsp = 5690,
    CmdCommonRogueUpdateScNotify = 5671,
    CmdRogueNpcDisappearScRsp = 5696,
    CmdCommonRogueQueryCsReq = 5693,
    CmdBuyRogueShopBuffScRsp = 5645,
    CmdSyncRogueAdventureRoomInfoScNotify = 5634,
    CmdGetRogueShopMiracleInfoCsReq = 5688,
    CmdPrepareRogueAdventureRoomCsReq = 5648,
    CmdSyncRogueCommonVirtualItemInfoScNotify = 5673,
    CmdUpdateRogueAdventureRoomScoreScRsp = 5666,
    CmdBuyRogueShopBuffCsReq = 5629,
    CmdGetRogueShopBuffInfoCsReq = 5609,
    CmdBuyRogueShopMiracleCsReq = 5643,
    CmdStopRogueAdventureRoomScRsp = 5601,
    CmdTakeRogueMiracleHandbookRewardScRsp = 5665,
    CmdHandleRogueCommonPendingActionCsReq = 5604,
    CmdEnhanceCommonRogueBuffScRsp = 5656,
    CmdRogueNpcDisappearCsReq = 5668,
    CmdTakeRogueEventHandbookRewardCsReq = 5689,
    CmdBuyRogueShopMiracleScRsp = 5686,
    CmdGetRogueAdventureRoomInfoScRsp = 5633,
    CmdGetRogueShopMiracleInfoScRsp = 5602,
    CmdSyncRogueHandbookDataUpdateScNotify = 5625,
    CmdStopRogueAdventureRoomCsReq = 5663,
    CmdExchangeRogueBuffWithMiracleScRsp = 5639,
    CmdEnhanceCommonRogueBuffCsReq = 5685,
    CmdHandleRogueCommonPendingActionScRsp = 5675,
    CmdGetRogueHandbookDataScRsp = 5679,
    CmdGetRogueShopBuffInfoScRsp = 5619,
    CmdPrepareRogueAdventureRoomScRsp = 5662,
    CmdGetRogueHandbookDataCsReq = 5654,
    CmdSyncRogueCommonPendingActionScNotify = 5692,
    CmdCommonRogueQueryScRsp = 5698,
    CmdExchangeRogueBuffWithMiracleCsReq = 5637,
    CmdUpdateRogueAdventureRoomScoreCsReq = 5655,
}
impl Kfmpmaojchm {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Kfmpmaojchm::CmdRogueCommonTypeNone => "CmdRogueCommonTypeNone",
            Kfmpmaojchm::CmdSyncRogueCommonActionResultScNotify => {
                "CmdSyncRogueCommonActionResultScNotify"
            }
            Kfmpmaojchm::CmdGetEnhanceCommonRogueBuffInfoCsReq => {
                "CmdGetEnhanceCommonRogueBuffInfoCsReq"
            }
            Kfmpmaojchm::CmdGetRogueAdventureRoomInfoCsReq => {
                "CmdGetRogueAdventureRoomInfoCsReq"
            }
            Kfmpmaojchm::CmdTakeRogueMiracleHandbookRewardCsReq => {
                "CmdTakeRogueMiracleHandbookRewardCsReq"
            }
            Kfmpmaojchm::CmdGetEnhanceCommonRogueBuffInfoScRsp => {
                "CmdGetEnhanceCommonRogueBuffInfoScRsp"
            }
            Kfmpmaojchm::CmdTakeRogueEventHandbookRewardScRsp => {
                "CmdTakeRogueEventHandbookRewardScRsp"
            }
            Kfmpmaojchm::CmdCommonRogueUpdateScNotify => "CmdCommonRogueUpdateScNotify",
            Kfmpmaojchm::CmdRogueNpcDisappearScRsp => "CmdRogueNpcDisappearScRsp",
            Kfmpmaojchm::CmdCommonRogueQueryCsReq => "CmdCommonRogueQueryCsReq",
            Kfmpmaojchm::CmdBuyRogueShopBuffScRsp => "CmdBuyRogueShopBuffScRsp",
            Kfmpmaojchm::CmdSyncRogueAdventureRoomInfoScNotify => {
                "CmdSyncRogueAdventureRoomInfoScNotify"
            }
            Kfmpmaojchm::CmdGetRogueShopMiracleInfoCsReq => {
                "CmdGetRogueShopMiracleInfoCsReq"
            }
            Kfmpmaojchm::CmdPrepareRogueAdventureRoomCsReq => {
                "CmdPrepareRogueAdventureRoomCsReq"
            }
            Kfmpmaojchm::CmdSyncRogueCommonVirtualItemInfoScNotify => {
                "CmdSyncRogueCommonVirtualItemInfoScNotify"
            }
            Kfmpmaojchm::CmdUpdateRogueAdventureRoomScoreScRsp => {
                "CmdUpdateRogueAdventureRoomScoreScRsp"
            }
            Kfmpmaojchm::CmdBuyRogueShopBuffCsReq => "CmdBuyRogueShopBuffCsReq",
            Kfmpmaojchm::CmdGetRogueShopBuffInfoCsReq => "CmdGetRogueShopBuffInfoCsReq",
            Kfmpmaojchm::CmdBuyRogueShopMiracleCsReq => "CmdBuyRogueShopMiracleCsReq",
            Kfmpmaojchm::CmdStopRogueAdventureRoomScRsp => {
                "CmdStopRogueAdventureRoomScRsp"
            }
            Kfmpmaojchm::CmdTakeRogueMiracleHandbookRewardScRsp => {
                "CmdTakeRogueMiracleHandbookRewardScRsp"
            }
            Kfmpmaojchm::CmdHandleRogueCommonPendingActionCsReq => {
                "CmdHandleRogueCommonPendingActionCsReq"
            }
            Kfmpmaojchm::CmdEnhanceCommonRogueBuffScRsp => {
                "CmdEnhanceCommonRogueBuffScRsp"
            }
            Kfmpmaojchm::CmdRogueNpcDisappearCsReq => "CmdRogueNpcDisappearCsReq",
            Kfmpmaojchm::CmdTakeRogueEventHandbookRewardCsReq => {
                "CmdTakeRogueEventHandbookRewardCsReq"
            }
            Kfmpmaojchm::CmdBuyRogueShopMiracleScRsp => "CmdBuyRogueShopMiracleScRsp",
            Kfmpmaojchm::CmdGetRogueAdventureRoomInfoScRsp => {
                "CmdGetRogueAdventureRoomInfoScRsp"
            }
            Kfmpmaojchm::CmdGetRogueShopMiracleInfoScRsp => {
                "CmdGetRogueShopMiracleInfoScRsp"
            }
            Kfmpmaojchm::CmdSyncRogueHandbookDataUpdateScNotify => {
                "CmdSyncRogueHandbookDataUpdateScNotify"
            }
            Kfmpmaojchm::CmdStopRogueAdventureRoomCsReq => {
                "CmdStopRogueAdventureRoomCsReq"
            }
            Kfmpmaojchm::CmdExchangeRogueBuffWithMiracleScRsp => {
                "CmdExchangeRogueBuffWithMiracleScRsp"
            }
            Kfmpmaojchm::CmdEnhanceCommonRogueBuffCsReq => {
                "CmdEnhanceCommonRogueBuffCsReq"
            }
            Kfmpmaojchm::CmdHandleRogueCommonPendingActionScRsp => {
                "CmdHandleRogueCommonPendingActionScRsp"
            }
            Kfmpmaojchm::CmdGetRogueHandbookDataScRsp => "CmdGetRogueHandbookDataScRsp",
            Kfmpmaojchm::CmdGetRogueShopBuffInfoScRsp => "CmdGetRogueShopBuffInfoScRsp",
            Kfmpmaojchm::CmdPrepareRogueAdventureRoomScRsp => {
                "CmdPrepareRogueAdventureRoomScRsp"
            }
            Kfmpmaojchm::CmdGetRogueHandbookDataCsReq => "CmdGetRogueHandbookDataCsReq",
            Kfmpmaojchm::CmdSyncRogueCommonPendingActionScNotify => {
                "CmdSyncRogueCommonPendingActionScNotify"
            }
            Kfmpmaojchm::CmdCommonRogueQueryScRsp => "CmdCommonRogueQueryScRsp",
            Kfmpmaojchm::CmdExchangeRogueBuffWithMiracleCsReq => {
                "CmdExchangeRogueBuffWithMiracleCsReq"
            }
            Kfmpmaojchm::CmdUpdateRogueAdventureRoomScoreCsReq => {
                "CmdUpdateRogueAdventureRoomScoreCsReq"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdRogueCommonTypeNone" => Some(Self::CmdRogueCommonTypeNone),
            "CmdSyncRogueCommonActionResultScNotify" => {
                Some(Self::CmdSyncRogueCommonActionResultScNotify)
            }
            "CmdGetEnhanceCommonRogueBuffInfoCsReq" => {
                Some(Self::CmdGetEnhanceCommonRogueBuffInfoCsReq)
            }
            "CmdGetRogueAdventureRoomInfoCsReq" => {
                Some(Self::CmdGetRogueAdventureRoomInfoCsReq)
            }
            "CmdTakeRogueMiracleHandbookRewardCsReq" => {
                Some(Self::CmdTakeRogueMiracleHandbookRewardCsReq)
            }
            "CmdGetEnhanceCommonRogueBuffInfoScRsp" => {
                Some(Self::CmdGetEnhanceCommonRogueBuffInfoScRsp)
            }
            "CmdTakeRogueEventHandbookRewardScRsp" => {
                Some(Self::CmdTakeRogueEventHandbookRewardScRsp)
            }
            "CmdCommonRogueUpdateScNotify" => Some(Self::CmdCommonRogueUpdateScNotify),
            "CmdRogueNpcDisappearScRsp" => Some(Self::CmdRogueNpcDisappearScRsp),
            "CmdCommonRogueQueryCsReq" => Some(Self::CmdCommonRogueQueryCsReq),
            "CmdBuyRogueShopBuffScRsp" => Some(Self::CmdBuyRogueShopBuffScRsp),
            "CmdSyncRogueAdventureRoomInfoScNotify" => {
                Some(Self::CmdSyncRogueAdventureRoomInfoScNotify)
            }
            "CmdGetRogueShopMiracleInfoCsReq" => {
                Some(Self::CmdGetRogueShopMiracleInfoCsReq)
            }
            "CmdPrepareRogueAdventureRoomCsReq" => {
                Some(Self::CmdPrepareRogueAdventureRoomCsReq)
            }
            "CmdSyncRogueCommonVirtualItemInfoScNotify" => {
                Some(Self::CmdSyncRogueCommonVirtualItemInfoScNotify)
            }
            "CmdUpdateRogueAdventureRoomScoreScRsp" => {
                Some(Self::CmdUpdateRogueAdventureRoomScoreScRsp)
            }
            "CmdBuyRogueShopBuffCsReq" => Some(Self::CmdBuyRogueShopBuffCsReq),
            "CmdGetRogueShopBuffInfoCsReq" => Some(Self::CmdGetRogueShopBuffInfoCsReq),
            "CmdBuyRogueShopMiracleCsReq" => Some(Self::CmdBuyRogueShopMiracleCsReq),
            "CmdStopRogueAdventureRoomScRsp" => {
                Some(Self::CmdStopRogueAdventureRoomScRsp)
            }
            "CmdTakeRogueMiracleHandbookRewardScRsp" => {
                Some(Self::CmdTakeRogueMiracleHandbookRewardScRsp)
            }
            "CmdHandleRogueCommonPendingActionCsReq" => {
                Some(Self::CmdHandleRogueCommonPendingActionCsReq)
            }
            "CmdEnhanceCommonRogueBuffScRsp" => {
                Some(Self::CmdEnhanceCommonRogueBuffScRsp)
            }
            "CmdRogueNpcDisappearCsReq" => Some(Self::CmdRogueNpcDisappearCsReq),
            "CmdTakeRogueEventHandbookRewardCsReq" => {
                Some(Self::CmdTakeRogueEventHandbookRewardCsReq)
            }
            "CmdBuyRogueShopMiracleScRsp" => Some(Self::CmdBuyRogueShopMiracleScRsp),
            "CmdGetRogueAdventureRoomInfoScRsp" => {
                Some(Self::CmdGetRogueAdventureRoomInfoScRsp)
            }
            "CmdGetRogueShopMiracleInfoScRsp" => {
                Some(Self::CmdGetRogueShopMiracleInfoScRsp)
            }
            "CmdSyncRogueHandbookDataUpdateScNotify" => {
                Some(Self::CmdSyncRogueHandbookDataUpdateScNotify)
            }
            "CmdStopRogueAdventureRoomCsReq" => {
                Some(Self::CmdStopRogueAdventureRoomCsReq)
            }
            "CmdExchangeRogueBuffWithMiracleScRsp" => {
                Some(Self::CmdExchangeRogueBuffWithMiracleScRsp)
            }
            "CmdEnhanceCommonRogueBuffCsReq" => {
                Some(Self::CmdEnhanceCommonRogueBuffCsReq)
            }
            "CmdHandleRogueCommonPendingActionScRsp" => {
                Some(Self::CmdHandleRogueCommonPendingActionScRsp)
            }
            "CmdGetRogueHandbookDataScRsp" => Some(Self::CmdGetRogueHandbookDataScRsp),
            "CmdGetRogueShopBuffInfoScRsp" => Some(Self::CmdGetRogueShopBuffInfoScRsp),
            "CmdPrepareRogueAdventureRoomScRsp" => {
                Some(Self::CmdPrepareRogueAdventureRoomScRsp)
            }
            "CmdGetRogueHandbookDataCsReq" => Some(Self::CmdGetRogueHandbookDataCsReq),
            "CmdSyncRogueCommonPendingActionScNotify" => {
                Some(Self::CmdSyncRogueCommonPendingActionScNotify)
            }
            "CmdCommonRogueQueryScRsp" => Some(Self::CmdCommonRogueQueryScRsp),
            "CmdExchangeRogueBuffWithMiracleCsReq" => {
                Some(Self::CmdExchangeRogueBuffWithMiracleCsReq)
            }
            "CmdUpdateRogueAdventureRoomScoreCsReq" => {
                Some(Self::CmdUpdateRogueAdventureRoomScoreCsReq)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Aaoldjnkkkj {
    RogueAdventureRoomStatusNone = 0,
    RogueAdventureRoomStatusPrepare = 1,
    RogueAdventureRoomStatusStarted = 2,
    RogueAdventureRoomStatusStopped = 3,
}
impl Aaoldjnkkkj {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Aaoldjnkkkj::RogueAdventureRoomStatusNone => {
                "ROGUE_ADVENTURE_ROOM_STATUS_NONE"
            }
            Aaoldjnkkkj::RogueAdventureRoomStatusPrepare => {
                "ROGUE_ADVENTURE_ROOM_STATUS_PREPARE"
            }
            Aaoldjnkkkj::RogueAdventureRoomStatusStarted => {
                "ROGUE_ADVENTURE_ROOM_STATUS_STARTED"
            }
            Aaoldjnkkkj::RogueAdventureRoomStatusStopped => {
                "ROGUE_ADVENTURE_ROOM_STATUS_STOPPED"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_ADVENTURE_ROOM_STATUS_NONE" => {
                Some(Self::RogueAdventureRoomStatusNone)
            }
            "ROGUE_ADVENTURE_ROOM_STATUS_PREPARE" => {
                Some(Self::RogueAdventureRoomStatusPrepare)
            }
            "ROGUE_ADVENTURE_ROOM_STATUS_STARTED" => {
                Some(Self::RogueAdventureRoomStatusStarted)
            }
            "ROGUE_ADVENTURE_ROOM_STATUS_STOPPED" => {
                Some(Self::RogueAdventureRoomStatusStopped)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mpgalnachlc {
    RogueCommonBuffSelectSourceTypeNone = 0,
    RogueCommonBuffSelectSourceTypeDiceRoll = 1,
    RogueCommonBuffSelectSourceTypeAeon = 2,
    RogueCommonBuffSelectSourceTypeBoardEvent = 3,
    RogueCommonBuffSelectSourceTypeLevelMechanism = 4,
}
impl Mpgalnachlc {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mpgalnachlc::RogueCommonBuffSelectSourceTypeNone => {
                "ROGUE_COMMON_BUFF_SELECT_SOURCE_TYPE_NONE"
            }
            Mpgalnachlc::RogueCommonBuffSelectSourceTypeDiceRoll => {
                "ROGUE_COMMON_BUFF_SELECT_SOURCE_TYPE_DICE_ROLL"
            }
            Mpgalnachlc::RogueCommonBuffSelectSourceTypeAeon => {
                "ROGUE_COMMON_BUFF_SELECT_SOURCE_TYPE_AEON"
            }
            Mpgalnachlc::RogueCommonBuffSelectSourceTypeBoardEvent => {
                "ROGUE_COMMON_BUFF_SELECT_SOURCE_TYPE_BOARD_EVENT"
            }
            Mpgalnachlc::RogueCommonBuffSelectSourceTypeLevelMechanism => {
                "ROGUE_COMMON_BUFF_SELECT_SOURCE_TYPE_LEVEL_MECHANISM"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_COMMON_BUFF_SELECT_SOURCE_TYPE_NONE" => {
                Some(Self::RogueCommonBuffSelectSourceTypeNone)
            }
            "ROGUE_COMMON_BUFF_SELECT_SOURCE_TYPE_DICE_ROLL" => {
                Some(Self::RogueCommonBuffSelectSourceTypeDiceRoll)
            }
            "ROGUE_COMMON_BUFF_SELECT_SOURCE_TYPE_AEON" => {
                Some(Self::RogueCommonBuffSelectSourceTypeAeon)
            }
            "ROGUE_COMMON_BUFF_SELECT_SOURCE_TYPE_BOARD_EVENT" => {
                Some(Self::RogueCommonBuffSelectSourceTypeBoardEvent)
            }
            "ROGUE_COMMON_BUFF_SELECT_SOURCE_TYPE_LEVEL_MECHANISM" => {
                Some(Self::RogueCommonBuffSelectSourceTypeLevelMechanism)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mmeamkolmog {
    RogueUnlockFunctionTypeMiracle = 0,
    RogueUnlockFunctionTypeShowHint = 1,
    RogueUnlockFunctionTypeCosmosBanAeon = 2,
}
impl Mmeamkolmog {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mmeamkolmog::RogueUnlockFunctionTypeMiracle => {
                "ROGUE_UNLOCK_FUNCTION_TYPE_MIRACLE"
            }
            Mmeamkolmog::RogueUnlockFunctionTypeShowHint => {
                "ROGUE_UNLOCK_FUNCTION_TYPE_SHOW_HINT"
            }
            Mmeamkolmog::RogueUnlockFunctionTypeCosmosBanAeon => {
                "ROGUE_UNLOCK_FUNCTION_TYPE_COSMOS_BAN_AEON"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_UNLOCK_FUNCTION_TYPE_MIRACLE" => {
                Some(Self::RogueUnlockFunctionTypeMiracle)
            }
            "ROGUE_UNLOCK_FUNCTION_TYPE_SHOW_HINT" => {
                Some(Self::RogueUnlockFunctionTypeShowHint)
            }
            "ROGUE_UNLOCK_FUNCTION_TYPE_COSMOS_BAN_AEON" => {
                Some(Self::RogueUnlockFunctionTypeCosmosBanAeon)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Cmhbbmokjjb {
    RogueCommonMiracleSelectSourceTypeNone = 0,
    RogueCommonMiracleSelectSourceTypeDiceRoll = 1,
    RogueCommonMiracleSelectSourceTypeAeon = 2,
    RogueCommonMiracleSelectSourceTypeBoardEvent = 3,
    RogueCommonMiracleSelectSourceTypeLevelMechanism = 4,
}
impl Cmhbbmokjjb {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Cmhbbmokjjb::RogueCommonMiracleSelectSourceTypeNone => {
                "ROGUE_COMMON_MIRACLE_SELECT_SOURCE_TYPE_NONE"
            }
            Cmhbbmokjjb::RogueCommonMiracleSelectSourceTypeDiceRoll => {
                "ROGUE_COMMON_MIRACLE_SELECT_SOURCE_TYPE_DICE_ROLL"
            }
            Cmhbbmokjjb::RogueCommonMiracleSelectSourceTypeAeon => {
                "ROGUE_COMMON_MIRACLE_SELECT_SOURCE_TYPE_AEON"
            }
            Cmhbbmokjjb::RogueCommonMiracleSelectSourceTypeBoardEvent => {
                "ROGUE_COMMON_MIRACLE_SELECT_SOURCE_TYPE_BOARD_EVENT"
            }
            Cmhbbmokjjb::RogueCommonMiracleSelectSourceTypeLevelMechanism => {
                "ROGUE_COMMON_MIRACLE_SELECT_SOURCE_TYPE_LEVEL_MECHANISM"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_COMMON_MIRACLE_SELECT_SOURCE_TYPE_NONE" => {
                Some(Self::RogueCommonMiracleSelectSourceTypeNone)
            }
            "ROGUE_COMMON_MIRACLE_SELECT_SOURCE_TYPE_DICE_ROLL" => {
                Some(Self::RogueCommonMiracleSelectSourceTypeDiceRoll)
            }
            "ROGUE_COMMON_MIRACLE_SELECT_SOURCE_TYPE_AEON" => {
                Some(Self::RogueCommonMiracleSelectSourceTypeAeon)
            }
            "ROGUE_COMMON_MIRACLE_SELECT_SOURCE_TYPE_BOARD_EVENT" => {
                Some(Self::RogueCommonMiracleSelectSourceTypeBoardEvent)
            }
            "ROGUE_COMMON_MIRACLE_SELECT_SOURCE_TYPE_LEVEL_MECHANISM" => {
                Some(Self::RogueCommonMiracleSelectSourceTypeLevelMechanism)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Epnljgcjiph {
    RogueCommonBuffDisplayTypeNone = 0,
    RogueCommonBuffDisplayTypeAdd = 1,
    RogueCommonBuffDisplayTypeRemove = 2,
}
impl Epnljgcjiph {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Epnljgcjiph::RogueCommonBuffDisplayTypeNone => {
                "ROGUE_COMMON_BUFF_DISPLAY_TYPE_NONE"
            }
            Epnljgcjiph::RogueCommonBuffDisplayTypeAdd => {
                "ROGUE_COMMON_BUFF_DISPLAY_TYPE_ADD"
            }
            Epnljgcjiph::RogueCommonBuffDisplayTypeRemove => {
                "ROGUE_COMMON_BUFF_DISPLAY_TYPE_REMOVE"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_COMMON_BUFF_DISPLAY_TYPE_NONE" => {
                Some(Self::RogueCommonBuffDisplayTypeNone)
            }
            "ROGUE_COMMON_BUFF_DISPLAY_TYPE_ADD" => {
                Some(Self::RogueCommonBuffDisplayTypeAdd)
            }
            "ROGUE_COMMON_BUFF_DISPLAY_TYPE_REMOVE" => {
                Some(Self::RogueCommonBuffDisplayTypeRemove)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Kiopbiapfnm {
    RogueCommonMiracleDisplayTypeNone = 0,
    RogueCommonMiracleDisplayTypeAdd = 1,
    RogueCommonMiracleDisplayTypeRemove = 2,
    RogueCommonMiracleDisplayTypeRepair = 3,
}
impl Kiopbiapfnm {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Kiopbiapfnm::RogueCommonMiracleDisplayTypeNone => {
                "ROGUE_COMMON_MIRACLE_DISPLAY_TYPE_NONE"
            }
            Kiopbiapfnm::RogueCommonMiracleDisplayTypeAdd => {
                "ROGUE_COMMON_MIRACLE_DISPLAY_TYPE_ADD"
            }
            Kiopbiapfnm::RogueCommonMiracleDisplayTypeRemove => {
                "ROGUE_COMMON_MIRACLE_DISPLAY_TYPE_REMOVE"
            }
            Kiopbiapfnm::RogueCommonMiracleDisplayTypeRepair => {
                "ROGUE_COMMON_MIRACLE_DISPLAY_TYPE_REPAIR"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_COMMON_MIRACLE_DISPLAY_TYPE_NONE" => {
                Some(Self::RogueCommonMiracleDisplayTypeNone)
            }
            "ROGUE_COMMON_MIRACLE_DISPLAY_TYPE_ADD" => {
                Some(Self::RogueCommonMiracleDisplayTypeAdd)
            }
            "ROGUE_COMMON_MIRACLE_DISPLAY_TYPE_REMOVE" => {
                Some(Self::RogueCommonMiracleDisplayTypeRemove)
            }
            "ROGUE_COMMON_MIRACLE_DISPLAY_TYPE_REPAIR" => {
                Some(Self::RogueCommonMiracleDisplayTypeRepair)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Lnlneogceaf {
    RogueCommonItemDisplayTypeNone = 0,
    RogueCommonItemDisplayTypeAdd = 1,
    RogueCommonItemDisplayTypeRemove = 2,
}
impl Lnlneogceaf {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Lnlneogceaf::RogueCommonItemDisplayTypeNone => {
                "ROGUE_COMMON_ITEM_DISPLAY_TYPE_NONE"
            }
            Lnlneogceaf::RogueCommonItemDisplayTypeAdd => {
                "ROGUE_COMMON_ITEM_DISPLAY_TYPE_ADD"
            }
            Lnlneogceaf::RogueCommonItemDisplayTypeRemove => {
                "ROGUE_COMMON_ITEM_DISPLAY_TYPE_REMOVE"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_COMMON_ITEM_DISPLAY_TYPE_NONE" => {
                Some(Self::RogueCommonItemDisplayTypeNone)
            }
            "ROGUE_COMMON_ITEM_DISPLAY_TYPE_ADD" => {
                Some(Self::RogueCommonItemDisplayTypeAdd)
            }
            "ROGUE_COMMON_ITEM_DISPLAY_TYPE_REMOVE" => {
                Some(Self::RogueCommonItemDisplayTypeRemove)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Bpakkdmjink {
    RogueCommonActionResultDisplayTypeNone = 0,
    RogueCommonActionResultDisplayTypeSingle = 1,
    RogueCommonActionResultDisplayTypeMulti = 2,
}
impl Bpakkdmjink {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Bpakkdmjink::RogueCommonActionResultDisplayTypeNone => {
                "ROGUE_COMMON_ACTION_RESULT_DISPLAY_TYPE_NONE"
            }
            Bpakkdmjink::RogueCommonActionResultDisplayTypeSingle => {
                "ROGUE_COMMON_ACTION_RESULT_DISPLAY_TYPE_SINGLE"
            }
            Bpakkdmjink::RogueCommonActionResultDisplayTypeMulti => {
                "ROGUE_COMMON_ACTION_RESULT_DISPLAY_TYPE_MULTI"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_COMMON_ACTION_RESULT_DISPLAY_TYPE_NONE" => {
                Some(Self::RogueCommonActionResultDisplayTypeNone)
            }
            "ROGUE_COMMON_ACTION_RESULT_DISPLAY_TYPE_SINGLE" => {
                Some(Self::RogueCommonActionResultDisplayTypeSingle)
            }
            "ROGUE_COMMON_ACTION_RESULT_DISPLAY_TYPE_MULTI" => {
                Some(Self::RogueCommonActionResultDisplayTypeMulti)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mneneelgfmg {
    RogueCommonActionResultSourceTypeNone = 0,
    RogueCommonActionResultSourceTypeSelect = 1,
    RogueCommonActionResultSourceTypeEnhance = 2,
    RogueCommonActionResultSourceTypeMiracle = 3,
    RogueCommonActionResultSourceTypeDialogue = 4,
    RogueCommonActionResultSourceTypeBonus = 5,
    RogueCommonActionResultSourceTypeShop = 6,
    RogueCommonActionResultSourceTypeDice = 7,
    RogueCommonActionResultSourceTypeAeon = 8,
    RogueCommonActionResultSourceTypeBoardEvent = 9,
    RogueCommonActionResultSourceTypeMazeSkill = 10,
    RogueCommonActionResultSourceTypeLevelMechanism = 11,
}
impl Mneneelgfmg {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mneneelgfmg::RogueCommonActionResultSourceTypeNone => {
                "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_NONE"
            }
            Mneneelgfmg::RogueCommonActionResultSourceTypeSelect => {
                "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_SELECT"
            }
            Mneneelgfmg::RogueCommonActionResultSourceTypeEnhance => {
                "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_ENHANCE"
            }
            Mneneelgfmg::RogueCommonActionResultSourceTypeMiracle => {
                "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_MIRACLE"
            }
            Mneneelgfmg::RogueCommonActionResultSourceTypeDialogue => {
                "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_DIALOGUE"
            }
            Mneneelgfmg::RogueCommonActionResultSourceTypeBonus => {
                "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_BONUS"
            }
            Mneneelgfmg::RogueCommonActionResultSourceTypeShop => {
                "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_SHOP"
            }
            Mneneelgfmg::RogueCommonActionResultSourceTypeDice => {
                "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_DICE"
            }
            Mneneelgfmg::RogueCommonActionResultSourceTypeAeon => {
                "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_AEON"
            }
            Mneneelgfmg::RogueCommonActionResultSourceTypeBoardEvent => {
                "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_BOARD_EVENT"
            }
            Mneneelgfmg::RogueCommonActionResultSourceTypeMazeSkill => {
                "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_MAZE_SKILL"
            }
            Mneneelgfmg::RogueCommonActionResultSourceTypeLevelMechanism => {
                "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_LEVEL_MECHANISM"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_NONE" => {
                Some(Self::RogueCommonActionResultSourceTypeNone)
            }
            "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_SELECT" => {
                Some(Self::RogueCommonActionResultSourceTypeSelect)
            }
            "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_ENHANCE" => {
                Some(Self::RogueCommonActionResultSourceTypeEnhance)
            }
            "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_MIRACLE" => {
                Some(Self::RogueCommonActionResultSourceTypeMiracle)
            }
            "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_DIALOGUE" => {
                Some(Self::RogueCommonActionResultSourceTypeDialogue)
            }
            "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_BONUS" => {
                Some(Self::RogueCommonActionResultSourceTypeBonus)
            }
            "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_SHOP" => {
                Some(Self::RogueCommonActionResultSourceTypeShop)
            }
            "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_DICE" => {
                Some(Self::RogueCommonActionResultSourceTypeDice)
            }
            "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_AEON" => {
                Some(Self::RogueCommonActionResultSourceTypeAeon)
            }
            "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_BOARD_EVENT" => {
                Some(Self::RogueCommonActionResultSourceTypeBoardEvent)
            }
            "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_MAZE_SKILL" => {
                Some(Self::RogueCommonActionResultSourceTypeMazeSkill)
            }
            "ROGUE_COMMON_ACTION_RESULT_SOURCE_TYPE_LEVEL_MECHANISM" => {
                Some(Self::RogueCommonActionResultSourceTypeLevelMechanism)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Jaaajkhfbdh {
    RogueTalentStatusLock = 0,
    RogueTalentStatusUnlock = 1,
    RogueTalentStatusEnable = 2,
}
impl Jaaajkhfbdh {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Jaaajkhfbdh::RogueTalentStatusLock => "ROGUE_TALENT_STATUS_LOCK",
            Jaaajkhfbdh::RogueTalentStatusUnlock => "ROGUE_TALENT_STATUS_UNLOCK",
            Jaaajkhfbdh::RogueTalentStatusEnable => "ROGUE_TALENT_STATUS_ENABLE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_TALENT_STATUS_LOCK" => Some(Self::RogueTalentStatusLock),
            "ROGUE_TALENT_STATUS_UNLOCK" => Some(Self::RogueTalentStatusUnlock),
            "ROGUE_TALENT_STATUS_ENABLE" => Some(Self::RogueTalentStatusEnable),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Bpdmocjafke {
    CmdRogueEndlessNone = 0,
    CmdRogueEndlessActivityBattleEndScNotify = 6002,
    CmdGetRogueEndlessActivityDataCsReq = 6034,
    CmdTakeRogueEndlessActivityPointRewardCsReq = 6009,
    CmdEnterRogueEndlessActivityStageScRsp = 6088,
    CmdTakeRogueEndlessActivityAllBonusRewardScRsp = 6086,
    CmdTakeRogueEndlessActivityPointRewardScRsp = 6019,
    CmdTakeRogueEndlessActivityAllBonusRewardCsReq = 6043,
    CmdGetRogueEndlessActivityDataScRsp = 6048,
    CmdEnterRogueEndlessActivityStageCsReq = 6062,
}
impl Bpdmocjafke {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Bpdmocjafke::CmdRogueEndlessNone => "CmdRogueEndlessNone",
            Bpdmocjafke::CmdRogueEndlessActivityBattleEndScNotify => {
                "CmdRogueEndlessActivityBattleEndScNotify"
            }
            Bpdmocjafke::CmdGetRogueEndlessActivityDataCsReq => {
                "CmdGetRogueEndlessActivityDataCsReq"
            }
            Bpdmocjafke::CmdTakeRogueEndlessActivityPointRewardCsReq => {
                "CmdTakeRogueEndlessActivityPointRewardCsReq"
            }
            Bpdmocjafke::CmdEnterRogueEndlessActivityStageScRsp => {
                "CmdEnterRogueEndlessActivityStageScRsp"
            }
            Bpdmocjafke::CmdTakeRogueEndlessActivityAllBonusRewardScRsp => {
                "CmdTakeRogueEndlessActivityAllBonusRewardScRsp"
            }
            Bpdmocjafke::CmdTakeRogueEndlessActivityPointRewardScRsp => {
                "CmdTakeRogueEndlessActivityPointRewardScRsp"
            }
            Bpdmocjafke::CmdTakeRogueEndlessActivityAllBonusRewardCsReq => {
                "CmdTakeRogueEndlessActivityAllBonusRewardCsReq"
            }
            Bpdmocjafke::CmdGetRogueEndlessActivityDataScRsp => {
                "CmdGetRogueEndlessActivityDataScRsp"
            }
            Bpdmocjafke::CmdEnterRogueEndlessActivityStageCsReq => {
                "CmdEnterRogueEndlessActivityStageCsReq"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdRogueEndlessNone" => Some(Self::CmdRogueEndlessNone),
            "CmdRogueEndlessActivityBattleEndScNotify" => {
                Some(Self::CmdRogueEndlessActivityBattleEndScNotify)
            }
            "CmdGetRogueEndlessActivityDataCsReq" => {
                Some(Self::CmdGetRogueEndlessActivityDataCsReq)
            }
            "CmdTakeRogueEndlessActivityPointRewardCsReq" => {
                Some(Self::CmdTakeRogueEndlessActivityPointRewardCsReq)
            }
            "CmdEnterRogueEndlessActivityStageScRsp" => {
                Some(Self::CmdEnterRogueEndlessActivityStageScRsp)
            }
            "CmdTakeRogueEndlessActivityAllBonusRewardScRsp" => {
                Some(Self::CmdTakeRogueEndlessActivityAllBonusRewardScRsp)
            }
            "CmdTakeRogueEndlessActivityPointRewardScRsp" => {
                Some(Self::CmdTakeRogueEndlessActivityPointRewardScRsp)
            }
            "CmdTakeRogueEndlessActivityAllBonusRewardCsReq" => {
                Some(Self::CmdTakeRogueEndlessActivityAllBonusRewardCsReq)
            }
            "CmdGetRogueEndlessActivityDataScRsp" => {
                Some(Self::CmdGetRogueEndlessActivityDataScRsp)
            }
            "CmdEnterRogueEndlessActivityStageCsReq" => {
                Some(Self::CmdEnterRogueEndlessActivityStageCsReq)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Jeoikkecmha {
    CmdRogueModifierTypeNone = 0,
    CmdRogueModifierStageStartNotify = 5329,
    CmdRogueModifierSelectCellCsReq = 5388,
    CmdRogueModifierSelectCellScRsp = 5302,
    CmdRogueModifierUpdateNotify = 5343,
    CmdRogueModifierAddNotify = 5362,
    CmdRogueModifierDelNotify = 5386,
}
impl Jeoikkecmha {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Jeoikkecmha::CmdRogueModifierTypeNone => "CmdRogueModifierTypeNone",
            Jeoikkecmha::CmdRogueModifierStageStartNotify => {
                "CmdRogueModifierStageStartNotify"
            }
            Jeoikkecmha::CmdRogueModifierSelectCellCsReq => {
                "CmdRogueModifierSelectCellCsReq"
            }
            Jeoikkecmha::CmdRogueModifierSelectCellScRsp => {
                "CmdRogueModifierSelectCellScRsp"
            }
            Jeoikkecmha::CmdRogueModifierUpdateNotify => "CmdRogueModifierUpdateNotify",
            Jeoikkecmha::CmdRogueModifierAddNotify => "CmdRogueModifierAddNotify",
            Jeoikkecmha::CmdRogueModifierDelNotify => "CmdRogueModifierDelNotify",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdRogueModifierTypeNone" => Some(Self::CmdRogueModifierTypeNone),
            "CmdRogueModifierStageStartNotify" => {
                Some(Self::CmdRogueModifierStageStartNotify)
            }
            "CmdRogueModifierSelectCellCsReq" => {
                Some(Self::CmdRogueModifierSelectCellCsReq)
            }
            "CmdRogueModifierSelectCellScRsp" => {
                Some(Self::CmdRogueModifierSelectCellScRsp)
            }
            "CmdRogueModifierUpdateNotify" => Some(Self::CmdRogueModifierUpdateNotify),
            "CmdRogueModifierAddNotify" => Some(Self::CmdRogueModifierAddNotify),
            "CmdRogueModifierDelNotify" => Some(Self::CmdRogueModifierDelNotify),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Lcmlaclkndi {
    RogueModifierSourceNone = 0,
    RogueModifierSourceDiceRoll = 1,
    RogueModifierSourceAeon = 2,
    RogueModifierSourceBoardEvent = 3,
    RogueModifierSourceDialogEvent = 4,
    RogueModifierSourceMiracle = 5,
    RogueModifierSourceCellMark = 6,
    RogueModifierSourceAeonTalent = 7,
    RogueModifierSourceBossDecay = 8,
    RogueModifierSourceDiceBranch = 9,
}
impl Lcmlaclkndi {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Lcmlaclkndi::RogueModifierSourceNone => "ROGUE_MODIFIER_SOURCE_NONE",
            Lcmlaclkndi::RogueModifierSourceDiceRoll => "ROGUE_MODIFIER_SOURCE_DICE_ROLL",
            Lcmlaclkndi::RogueModifierSourceAeon => "ROGUE_MODIFIER_SOURCE_AEON",
            Lcmlaclkndi::RogueModifierSourceBoardEvent => {
                "ROGUE_MODIFIER_SOURCE_BOARD_EVENT"
            }
            Lcmlaclkndi::RogueModifierSourceDialogEvent => {
                "ROGUE_MODIFIER_SOURCE_DIALOG_EVENT"
            }
            Lcmlaclkndi::RogueModifierSourceMiracle => "ROGUE_MODIFIER_SOURCE_MIRACLE",
            Lcmlaclkndi::RogueModifierSourceCellMark => "ROGUE_MODIFIER_SOURCE_CELL_MARK",
            Lcmlaclkndi::RogueModifierSourceAeonTalent => {
                "ROGUE_MODIFIER_SOURCE_AEON_TALENT"
            }
            Lcmlaclkndi::RogueModifierSourceBossDecay => {
                "ROGUE_MODIFIER_SOURCE_BOSS_DECAY"
            }
            Lcmlaclkndi::RogueModifierSourceDiceBranch => {
                "ROGUE_MODIFIER_SOURCE_DICE_BRANCH"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_MODIFIER_SOURCE_NONE" => Some(Self::RogueModifierSourceNone),
            "ROGUE_MODIFIER_SOURCE_DICE_ROLL" => Some(Self::RogueModifierSourceDiceRoll),
            "ROGUE_MODIFIER_SOURCE_AEON" => Some(Self::RogueModifierSourceAeon),
            "ROGUE_MODIFIER_SOURCE_BOARD_EVENT" => {
                Some(Self::RogueModifierSourceBoardEvent)
            }
            "ROGUE_MODIFIER_SOURCE_DIALOG_EVENT" => {
                Some(Self::RogueModifierSourceDialogEvent)
            }
            "ROGUE_MODIFIER_SOURCE_MIRACLE" => Some(Self::RogueModifierSourceMiracle),
            "ROGUE_MODIFIER_SOURCE_CELL_MARK" => Some(Self::RogueModifierSourceCellMark),
            "ROGUE_MODIFIER_SOURCE_AEON_TALENT" => {
                Some(Self::RogueModifierSourceAeonTalent)
            }
            "ROGUE_MODIFIER_SOURCE_BOSS_DECAY" => {
                Some(Self::RogueModifierSourceBossDecay)
            }
            "ROGUE_MODIFIER_SOURCE_DICE_BRANCH" => {
                Some(Self::RogueModifierSourceDiceBranch)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Gmhccidmemo {
    RogueModifierContentDefinite = 0,
    RogueModifierContentRandom = 1,
}
impl Gmhccidmemo {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Gmhccidmemo::RogueModifierContentDefinite => {
                "ROGUE_MODIFIER_CONTENT_DEFINITE"
            }
            Gmhccidmemo::RogueModifierContentRandom => "ROGUE_MODIFIER_CONTENT_RANDOM",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ROGUE_MODIFIER_CONTENT_DEFINITE" => Some(Self::RogueModifierContentDefinite),
            "ROGUE_MODIFIER_CONTENT_RANDOM" => Some(Self::RogueModifierContentRandom),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Apmnfogkhkc {
    CmdRollShopTypeNone = 0,
    CmdDoGachaInRollShopCsReq = 6913,
    CmdTakeRollShopRewardScRsp = 6919,
    CmdDoGachaInRollShopScRsp = 6917,
    CmdGetRollShopInfoCsReq = 6901,
    CmdGetRollShopInfoScRsp = 6918,
    CmdTakeRollShopRewardCsReq = 6920,
}
impl Apmnfogkhkc {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Apmnfogkhkc::CmdRollShopTypeNone => "CmdRollShopTypeNone",
            Apmnfogkhkc::CmdDoGachaInRollShopCsReq => "CmdDoGachaInRollShopCsReq",
            Apmnfogkhkc::CmdTakeRollShopRewardScRsp => "CmdTakeRollShopRewardScRsp",
            Apmnfogkhkc::CmdDoGachaInRollShopScRsp => "CmdDoGachaInRollShopScRsp",
            Apmnfogkhkc::CmdGetRollShopInfoCsReq => "CmdGetRollShopInfoCsReq",
            Apmnfogkhkc::CmdGetRollShopInfoScRsp => "CmdGetRollShopInfoScRsp",
            Apmnfogkhkc::CmdTakeRollShopRewardCsReq => "CmdTakeRollShopRewardCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdRollShopTypeNone" => Some(Self::CmdRollShopTypeNone),
            "CmdDoGachaInRollShopCsReq" => Some(Self::CmdDoGachaInRollShopCsReq),
            "CmdTakeRollShopRewardScRsp" => Some(Self::CmdTakeRollShopRewardScRsp),
            "CmdDoGachaInRollShopScRsp" => Some(Self::CmdDoGachaInRollShopScRsp),
            "CmdGetRollShopInfoCsReq" => Some(Self::CmdGetRollShopInfoCsReq),
            "CmdGetRollShopInfoScRsp" => Some(Self::CmdGetRollShopInfoScRsp),
            "CmdTakeRollShopRewardCsReq" => Some(Self::CmdTakeRollShopRewardCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Cmpepmnekko {
    CmdSceneTypeNone = 0,
    CmdEnteredSceneChangeScNotify = 1450,
    CmdGetSceneMapInfoScRsp = 1499,
    CmdSpringRecoverSingleAvatarScRsp = 1498,
    CmdSetSpringRecoverConfigCsReq = 1451,
    CmdSceneEntityMoveScNotify = 1445,
    CmdSceneUpdatePositionVersionNotify = 1468,
    CmdReEnterLastElementStageCsReq = 1405,
    CmdGroupStateChangeScNotify = 1447,
    CmdSetClientPausedCsReq = 1500,
    CmdEnterSceneByServerScNotify = 1410,
    CmdSceneCastSkillMpUpdateScNotify = 1459,
    CmdGetSpringRecoverDataScRsp = 1473,
    CmdRecoverAllLineupScRsp = 1482,
    CmdGameplayCounterCountDownCsReq = 1458,
    CmdInteractPropCsReq = 1462,
    CmdDeleteSummonUnitScRsp = 1487,
    CmdScenePlaneEventScNotify = 1484,
    CmdLastSpringRefreshTimeNotify = 1439,
    CmdUpdateFloorSavedValueNotify = 1420,
    CmdGetEnteredSceneCsReq = 1427,
    CmdStartTimedCocoonStageCsReq = 1426,
    CmdRecoverAllLineupCsReq = 1424,
    CmdStartTimedFarmElementCsReq = 1436,
    CmdSceneGroupRefreshScNotify = 1477,
    CmdSpringRefreshScRsp = 1437,
    CmdUnlockedAreaMapScNotify = 1457,
    CmdStartTimedCocoonStageScRsp = 1423,
    CmdActivateFarmElementScRsp = 1455,
    CmdGetUnlockTeleportCsReq = 1440,
    CmdDeactivateFarmElementCsReq = 1490,
    CmdRefreshTriggerByClientCsReq = 1432,
    CmdSetGroupCustomSaveDataCsReq = 1449,
    CmdSavePointsInfoNotify = 1411,
    CmdGameplayCounterRecoverScRsp = 1481,
    CmdGetEnteredSceneScRsp = 1431,
    CmdUpdateMechanismBarScNotify = 1471,
    CmdSetSpringRecoverConfigScRsp = 1435,
    CmdDeleteSummonUnitCsReq = 1417,
    CmdSetGroupCustomSaveDataScRsp = 1403,
    CmdSceneCastSkillCostMpCsReq = 1406,
    CmdSyncServerSceneChangeNotify = 1414,
    CmdSceneEnterStageCsReq = 1485,
    CmdActivateFarmElementCsReq = 1492,
    CmdStartTimedFarmElementScRsp = 1460,
    CmdGetCurSceneInfoCsReq = 1419,
    CmdSpringRecoverSingleAvatarCsReq = 1493,
    CmdSceneEntityTeleportCsReq = 1412,
    CmdReturnLastTownScRsp = 1430,
    CmdEnterSectionCsReq = 1441,
    CmdSceneCastSkillScRsp = 1409,
    CmdInteractPropScRsp = 1488,
    CmdHealPoolInfoNotify = 1475,
    CmdGetCurSceneInfoScRsp = 1443,
    CmdEnterSceneScRsp = 1413,
    CmdReEnterLastElementStageScRsp = 1422,
    CmdGameplayCounterCountDownScRsp = 1464,
    CmdReturnLastTownCsReq = 1416,
    CmdRefreshTriggerByClientScNotify = 1474,
    CmdSyncEntityBuffChangeListScNotify = 1496,
    CmdGroupStateChangeScRsp = 1421,
    CmdSpringRecoverCsReq = 1444,
    CmdSetCurInteractEntityScRsp = 1497,
    CmdSceneCastSkillCsReq = 1402,
    CmdStartCocoonStageCsReq = 1408,
    CmdGetSceneMapInfoCsReq = 1470,
    CmdSceneEntityMoveScRsp = 1448,
    CmdDeactivateFarmElementScRsp = 1467,
    CmdSetCurInteractEntityCsReq = 1491,
    CmdEntityBindPropScRsp = 1425,
    CmdGameplayCounterRecoverCsReq = 1452,
    CmdSpringRefreshCsReq = 1442,
    CmdSpringRecoverScRsp = 1404,
    CmdEnterSectionScRsp = 1428,
    CmdStartCocoonStageScRsp = 1454,
    CmdSceneCastSkillCostMpScRsp = 1433,
    CmdGroupStateChangeCsReq = 1476,
    CmdSceneEntityMoveCsReq = 1434,
    CmdGetUnlockTeleportScRsp = 1469,
    CmdGameplayCounterUpdateScNotify = 1478,
    CmdSceneEnterStageScRsp = 1456,
    CmdEntityBindPropCsReq = 1479,
    CmdUnlockTeleportNotify = 1483,
    CmdRefreshTriggerByClientScRsp = 1438,
    CmdGetSpringRecoverDataCsReq = 1466,
    CmdSceneEntityTeleportScRsp = 1415,
    CmdSetClientPausedScRsp = 1465,
    CmdEnterSceneCsReq = 1472,
}
impl Cmpepmnekko {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Cmpepmnekko::CmdSceneTypeNone => "CmdSceneTypeNone",
            Cmpepmnekko::CmdEnteredSceneChangeScNotify => "CmdEnteredSceneChangeScNotify",
            Cmpepmnekko::CmdGetSceneMapInfoScRsp => "CmdGetSceneMapInfoScRsp",
            Cmpepmnekko::CmdSpringRecoverSingleAvatarScRsp => {
                "CmdSpringRecoverSingleAvatarScRsp"
            }
            Cmpepmnekko::CmdSetSpringRecoverConfigCsReq => {
                "CmdSetSpringRecoverConfigCsReq"
            }
            Cmpepmnekko::CmdSceneEntityMoveScNotify => "CmdSceneEntityMoveScNotify",
            Cmpepmnekko::CmdSceneUpdatePositionVersionNotify => {
                "CmdSceneUpdatePositionVersionNotify"
            }
            Cmpepmnekko::CmdReEnterLastElementStageCsReq => {
                "CmdReEnterLastElementStageCsReq"
            }
            Cmpepmnekko::CmdGroupStateChangeScNotify => "CmdGroupStateChangeScNotify",
            Cmpepmnekko::CmdSetClientPausedCsReq => "CmdSetClientPausedCsReq",
            Cmpepmnekko::CmdEnterSceneByServerScNotify => "CmdEnterSceneByServerScNotify",
            Cmpepmnekko::CmdSceneCastSkillMpUpdateScNotify => {
                "CmdSceneCastSkillMpUpdateScNotify"
            }
            Cmpepmnekko::CmdGetSpringRecoverDataScRsp => "CmdGetSpringRecoverDataScRsp",
            Cmpepmnekko::CmdRecoverAllLineupScRsp => "CmdRecoverAllLineupScRsp",
            Cmpepmnekko::CmdGameplayCounterCountDownCsReq => {
                "CmdGameplayCounterCountDownCsReq"
            }
            Cmpepmnekko::CmdInteractPropCsReq => "CmdInteractPropCsReq",
            Cmpepmnekko::CmdDeleteSummonUnitScRsp => "CmdDeleteSummonUnitScRsp",
            Cmpepmnekko::CmdScenePlaneEventScNotify => "CmdScenePlaneEventScNotify",
            Cmpepmnekko::CmdLastSpringRefreshTimeNotify => {
                "CmdLastSpringRefreshTimeNotify"
            }
            Cmpepmnekko::CmdUpdateFloorSavedValueNotify => {
                "CmdUpdateFloorSavedValueNotify"
            }
            Cmpepmnekko::CmdGetEnteredSceneCsReq => "CmdGetEnteredSceneCsReq",
            Cmpepmnekko::CmdStartTimedCocoonStageCsReq => "CmdStartTimedCocoonStageCsReq",
            Cmpepmnekko::CmdRecoverAllLineupCsReq => "CmdRecoverAllLineupCsReq",
            Cmpepmnekko::CmdStartTimedFarmElementCsReq => "CmdStartTimedFarmElementCsReq",
            Cmpepmnekko::CmdSceneGroupRefreshScNotify => "CmdSceneGroupRefreshScNotify",
            Cmpepmnekko::CmdSpringRefreshScRsp => "CmdSpringRefreshScRsp",
            Cmpepmnekko::CmdUnlockedAreaMapScNotify => "CmdUnlockedAreaMapScNotify",
            Cmpepmnekko::CmdStartTimedCocoonStageScRsp => "CmdStartTimedCocoonStageScRsp",
            Cmpepmnekko::CmdActivateFarmElementScRsp => "CmdActivateFarmElementScRsp",
            Cmpepmnekko::CmdGetUnlockTeleportCsReq => "CmdGetUnlockTeleportCsReq",
            Cmpepmnekko::CmdDeactivateFarmElementCsReq => "CmdDeactivateFarmElementCsReq",
            Cmpepmnekko::CmdRefreshTriggerByClientCsReq => {
                "CmdRefreshTriggerByClientCsReq"
            }
            Cmpepmnekko::CmdSetGroupCustomSaveDataCsReq => {
                "CmdSetGroupCustomSaveDataCsReq"
            }
            Cmpepmnekko::CmdSavePointsInfoNotify => "CmdSavePointsInfoNotify",
            Cmpepmnekko::CmdGameplayCounterRecoverScRsp => {
                "CmdGameplayCounterRecoverScRsp"
            }
            Cmpepmnekko::CmdGetEnteredSceneScRsp => "CmdGetEnteredSceneScRsp",
            Cmpepmnekko::CmdUpdateMechanismBarScNotify => "CmdUpdateMechanismBarScNotify",
            Cmpepmnekko::CmdSetSpringRecoverConfigScRsp => {
                "CmdSetSpringRecoverConfigScRsp"
            }
            Cmpepmnekko::CmdDeleteSummonUnitCsReq => "CmdDeleteSummonUnitCsReq",
            Cmpepmnekko::CmdSetGroupCustomSaveDataScRsp => {
                "CmdSetGroupCustomSaveDataScRsp"
            }
            Cmpepmnekko::CmdSceneCastSkillCostMpCsReq => "CmdSceneCastSkillCostMpCsReq",
            Cmpepmnekko::CmdSyncServerSceneChangeNotify => {
                "CmdSyncServerSceneChangeNotify"
            }
            Cmpepmnekko::CmdSceneEnterStageCsReq => "CmdSceneEnterStageCsReq",
            Cmpepmnekko::CmdActivateFarmElementCsReq => "CmdActivateFarmElementCsReq",
            Cmpepmnekko::CmdStartTimedFarmElementScRsp => "CmdStartTimedFarmElementScRsp",
            Cmpepmnekko::CmdGetCurSceneInfoCsReq => "CmdGetCurSceneInfoCsReq",
            Cmpepmnekko::CmdSpringRecoverSingleAvatarCsReq => {
                "CmdSpringRecoverSingleAvatarCsReq"
            }
            Cmpepmnekko::CmdSceneEntityTeleportCsReq => "CmdSceneEntityTeleportCsReq",
            Cmpepmnekko::CmdReturnLastTownScRsp => "CmdReturnLastTownScRsp",
            Cmpepmnekko::CmdEnterSectionCsReq => "CmdEnterSectionCsReq",
            Cmpepmnekko::CmdSceneCastSkillScRsp => "CmdSceneCastSkillScRsp",
            Cmpepmnekko::CmdInteractPropScRsp => "CmdInteractPropScRsp",
            Cmpepmnekko::CmdHealPoolInfoNotify => "CmdHealPoolInfoNotify",
            Cmpepmnekko::CmdGetCurSceneInfoScRsp => "CmdGetCurSceneInfoScRsp",
            Cmpepmnekko::CmdEnterSceneScRsp => "CmdEnterSceneScRsp",
            Cmpepmnekko::CmdReEnterLastElementStageScRsp => {
                "CmdReEnterLastElementStageScRsp"
            }
            Cmpepmnekko::CmdGameplayCounterCountDownScRsp => {
                "CmdGameplayCounterCountDownScRsp"
            }
            Cmpepmnekko::CmdReturnLastTownCsReq => "CmdReturnLastTownCsReq",
            Cmpepmnekko::CmdRefreshTriggerByClientScNotify => {
                "CmdRefreshTriggerByClientScNotify"
            }
            Cmpepmnekko::CmdSyncEntityBuffChangeListScNotify => {
                "CmdSyncEntityBuffChangeListScNotify"
            }
            Cmpepmnekko::CmdGroupStateChangeScRsp => "CmdGroupStateChangeScRsp",
            Cmpepmnekko::CmdSpringRecoverCsReq => "CmdSpringRecoverCsReq",
            Cmpepmnekko::CmdSetCurInteractEntityScRsp => "CmdSetCurInteractEntityScRsp",
            Cmpepmnekko::CmdSceneCastSkillCsReq => "CmdSceneCastSkillCsReq",
            Cmpepmnekko::CmdStartCocoonStageCsReq => "CmdStartCocoonStageCsReq",
            Cmpepmnekko::CmdGetSceneMapInfoCsReq => "CmdGetSceneMapInfoCsReq",
            Cmpepmnekko::CmdSceneEntityMoveScRsp => "CmdSceneEntityMoveScRsp",
            Cmpepmnekko::CmdDeactivateFarmElementScRsp => "CmdDeactivateFarmElementScRsp",
            Cmpepmnekko::CmdSetCurInteractEntityCsReq => "CmdSetCurInteractEntityCsReq",
            Cmpepmnekko::CmdEntityBindPropScRsp => "CmdEntityBindPropScRsp",
            Cmpepmnekko::CmdGameplayCounterRecoverCsReq => {
                "CmdGameplayCounterRecoverCsReq"
            }
            Cmpepmnekko::CmdSpringRefreshCsReq => "CmdSpringRefreshCsReq",
            Cmpepmnekko::CmdSpringRecoverScRsp => "CmdSpringRecoverScRsp",
            Cmpepmnekko::CmdEnterSectionScRsp => "CmdEnterSectionScRsp",
            Cmpepmnekko::CmdStartCocoonStageScRsp => "CmdStartCocoonStageScRsp",
            Cmpepmnekko::CmdSceneCastSkillCostMpScRsp => "CmdSceneCastSkillCostMpScRsp",
            Cmpepmnekko::CmdGroupStateChangeCsReq => "CmdGroupStateChangeCsReq",
            Cmpepmnekko::CmdSceneEntityMoveCsReq => "CmdSceneEntityMoveCsReq",
            Cmpepmnekko::CmdGetUnlockTeleportScRsp => "CmdGetUnlockTeleportScRsp",
            Cmpepmnekko::CmdGameplayCounterUpdateScNotify => {
                "CmdGameplayCounterUpdateScNotify"
            }
            Cmpepmnekko::CmdSceneEnterStageScRsp => "CmdSceneEnterStageScRsp",
            Cmpepmnekko::CmdEntityBindPropCsReq => "CmdEntityBindPropCsReq",
            Cmpepmnekko::CmdUnlockTeleportNotify => "CmdUnlockTeleportNotify",
            Cmpepmnekko::CmdRefreshTriggerByClientScRsp => {
                "CmdRefreshTriggerByClientScRsp"
            }
            Cmpepmnekko::CmdGetSpringRecoverDataCsReq => "CmdGetSpringRecoverDataCsReq",
            Cmpepmnekko::CmdSceneEntityTeleportScRsp => "CmdSceneEntityTeleportScRsp",
            Cmpepmnekko::CmdSetClientPausedScRsp => "CmdSetClientPausedScRsp",
            Cmpepmnekko::CmdEnterSceneCsReq => "CmdEnterSceneCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdSceneTypeNone" => Some(Self::CmdSceneTypeNone),
            "CmdEnteredSceneChangeScNotify" => Some(Self::CmdEnteredSceneChangeScNotify),
            "CmdGetSceneMapInfoScRsp" => Some(Self::CmdGetSceneMapInfoScRsp),
            "CmdSpringRecoverSingleAvatarScRsp" => {
                Some(Self::CmdSpringRecoverSingleAvatarScRsp)
            }
            "CmdSetSpringRecoverConfigCsReq" => {
                Some(Self::CmdSetSpringRecoverConfigCsReq)
            }
            "CmdSceneEntityMoveScNotify" => Some(Self::CmdSceneEntityMoveScNotify),
            "CmdSceneUpdatePositionVersionNotify" => {
                Some(Self::CmdSceneUpdatePositionVersionNotify)
            }
            "CmdReEnterLastElementStageCsReq" => {
                Some(Self::CmdReEnterLastElementStageCsReq)
            }
            "CmdGroupStateChangeScNotify" => Some(Self::CmdGroupStateChangeScNotify),
            "CmdSetClientPausedCsReq" => Some(Self::CmdSetClientPausedCsReq),
            "CmdEnterSceneByServerScNotify" => Some(Self::CmdEnterSceneByServerScNotify),
            "CmdSceneCastSkillMpUpdateScNotify" => {
                Some(Self::CmdSceneCastSkillMpUpdateScNotify)
            }
            "CmdGetSpringRecoverDataScRsp" => Some(Self::CmdGetSpringRecoverDataScRsp),
            "CmdRecoverAllLineupScRsp" => Some(Self::CmdRecoverAllLineupScRsp),
            "CmdGameplayCounterCountDownCsReq" => {
                Some(Self::CmdGameplayCounterCountDownCsReq)
            }
            "CmdInteractPropCsReq" => Some(Self::CmdInteractPropCsReq),
            "CmdDeleteSummonUnitScRsp" => Some(Self::CmdDeleteSummonUnitScRsp),
            "CmdScenePlaneEventScNotify" => Some(Self::CmdScenePlaneEventScNotify),
            "CmdLastSpringRefreshTimeNotify" => {
                Some(Self::CmdLastSpringRefreshTimeNotify)
            }
            "CmdUpdateFloorSavedValueNotify" => {
                Some(Self::CmdUpdateFloorSavedValueNotify)
            }
            "CmdGetEnteredSceneCsReq" => Some(Self::CmdGetEnteredSceneCsReq),
            "CmdStartTimedCocoonStageCsReq" => Some(Self::CmdStartTimedCocoonStageCsReq),
            "CmdRecoverAllLineupCsReq" => Some(Self::CmdRecoverAllLineupCsReq),
            "CmdStartTimedFarmElementCsReq" => Some(Self::CmdStartTimedFarmElementCsReq),
            "CmdSceneGroupRefreshScNotify" => Some(Self::CmdSceneGroupRefreshScNotify),
            "CmdSpringRefreshScRsp" => Some(Self::CmdSpringRefreshScRsp),
            "CmdUnlockedAreaMapScNotify" => Some(Self::CmdUnlockedAreaMapScNotify),
            "CmdStartTimedCocoonStageScRsp" => Some(Self::CmdStartTimedCocoonStageScRsp),
            "CmdActivateFarmElementScRsp" => Some(Self::CmdActivateFarmElementScRsp),
            "CmdGetUnlockTeleportCsReq" => Some(Self::CmdGetUnlockTeleportCsReq),
            "CmdDeactivateFarmElementCsReq" => Some(Self::CmdDeactivateFarmElementCsReq),
            "CmdRefreshTriggerByClientCsReq" => {
                Some(Self::CmdRefreshTriggerByClientCsReq)
            }
            "CmdSetGroupCustomSaveDataCsReq" => {
                Some(Self::CmdSetGroupCustomSaveDataCsReq)
            }
            "CmdSavePointsInfoNotify" => Some(Self::CmdSavePointsInfoNotify),
            "CmdGameplayCounterRecoverScRsp" => {
                Some(Self::CmdGameplayCounterRecoverScRsp)
            }
            "CmdGetEnteredSceneScRsp" => Some(Self::CmdGetEnteredSceneScRsp),
            "CmdUpdateMechanismBarScNotify" => Some(Self::CmdUpdateMechanismBarScNotify),
            "CmdSetSpringRecoverConfigScRsp" => {
                Some(Self::CmdSetSpringRecoverConfigScRsp)
            }
            "CmdDeleteSummonUnitCsReq" => Some(Self::CmdDeleteSummonUnitCsReq),
            "CmdSetGroupCustomSaveDataScRsp" => {
                Some(Self::CmdSetGroupCustomSaveDataScRsp)
            }
            "CmdSceneCastSkillCostMpCsReq" => Some(Self::CmdSceneCastSkillCostMpCsReq),
            "CmdSyncServerSceneChangeNotify" => {
                Some(Self::CmdSyncServerSceneChangeNotify)
            }
            "CmdSceneEnterStageCsReq" => Some(Self::CmdSceneEnterStageCsReq),
            "CmdActivateFarmElementCsReq" => Some(Self::CmdActivateFarmElementCsReq),
            "CmdStartTimedFarmElementScRsp" => Some(Self::CmdStartTimedFarmElementScRsp),
            "CmdGetCurSceneInfoCsReq" => Some(Self::CmdGetCurSceneInfoCsReq),
            "CmdSpringRecoverSingleAvatarCsReq" => {
                Some(Self::CmdSpringRecoverSingleAvatarCsReq)
            }
            "CmdSceneEntityTeleportCsReq" => Some(Self::CmdSceneEntityTeleportCsReq),
            "CmdReturnLastTownScRsp" => Some(Self::CmdReturnLastTownScRsp),
            "CmdEnterSectionCsReq" => Some(Self::CmdEnterSectionCsReq),
            "CmdSceneCastSkillScRsp" => Some(Self::CmdSceneCastSkillScRsp),
            "CmdInteractPropScRsp" => Some(Self::CmdInteractPropScRsp),
            "CmdHealPoolInfoNotify" => Some(Self::CmdHealPoolInfoNotify),
            "CmdGetCurSceneInfoScRsp" => Some(Self::CmdGetCurSceneInfoScRsp),
            "CmdEnterSceneScRsp" => Some(Self::CmdEnterSceneScRsp),
            "CmdReEnterLastElementStageScRsp" => {
                Some(Self::CmdReEnterLastElementStageScRsp)
            }
            "CmdGameplayCounterCountDownScRsp" => {
                Some(Self::CmdGameplayCounterCountDownScRsp)
            }
            "CmdReturnLastTownCsReq" => Some(Self::CmdReturnLastTownCsReq),
            "CmdRefreshTriggerByClientScNotify" => {
                Some(Self::CmdRefreshTriggerByClientScNotify)
            }
            "CmdSyncEntityBuffChangeListScNotify" => {
                Some(Self::CmdSyncEntityBuffChangeListScNotify)
            }
            "CmdGroupStateChangeScRsp" => Some(Self::CmdGroupStateChangeScRsp),
            "CmdSpringRecoverCsReq" => Some(Self::CmdSpringRecoverCsReq),
            "CmdSetCurInteractEntityScRsp" => Some(Self::CmdSetCurInteractEntityScRsp),
            "CmdSceneCastSkillCsReq" => Some(Self::CmdSceneCastSkillCsReq),
            "CmdStartCocoonStageCsReq" => Some(Self::CmdStartCocoonStageCsReq),
            "CmdGetSceneMapInfoCsReq" => Some(Self::CmdGetSceneMapInfoCsReq),
            "CmdSceneEntityMoveScRsp" => Some(Self::CmdSceneEntityMoveScRsp),
            "CmdDeactivateFarmElementScRsp" => Some(Self::CmdDeactivateFarmElementScRsp),
            "CmdSetCurInteractEntityCsReq" => Some(Self::CmdSetCurInteractEntityCsReq),
            "CmdEntityBindPropScRsp" => Some(Self::CmdEntityBindPropScRsp),
            "CmdGameplayCounterRecoverCsReq" => {
                Some(Self::CmdGameplayCounterRecoverCsReq)
            }
            "CmdSpringRefreshCsReq" => Some(Self::CmdSpringRefreshCsReq),
            "CmdSpringRecoverScRsp" => Some(Self::CmdSpringRecoverScRsp),
            "CmdEnterSectionScRsp" => Some(Self::CmdEnterSectionScRsp),
            "CmdStartCocoonStageScRsp" => Some(Self::CmdStartCocoonStageScRsp),
            "CmdSceneCastSkillCostMpScRsp" => Some(Self::CmdSceneCastSkillCostMpScRsp),
            "CmdGroupStateChangeCsReq" => Some(Self::CmdGroupStateChangeCsReq),
            "CmdSceneEntityMoveCsReq" => Some(Self::CmdSceneEntityMoveCsReq),
            "CmdGetUnlockTeleportScRsp" => Some(Self::CmdGetUnlockTeleportScRsp),
            "CmdGameplayCounterUpdateScNotify" => {
                Some(Self::CmdGameplayCounterUpdateScNotify)
            }
            "CmdSceneEnterStageScRsp" => Some(Self::CmdSceneEnterStageScRsp),
            "CmdEntityBindPropCsReq" => Some(Self::CmdEntityBindPropCsReq),
            "CmdUnlockTeleportNotify" => Some(Self::CmdUnlockTeleportNotify),
            "CmdRefreshTriggerByClientScRsp" => {
                Some(Self::CmdRefreshTriggerByClientScRsp)
            }
            "CmdGetSpringRecoverDataCsReq" => Some(Self::CmdGetSpringRecoverDataCsReq),
            "CmdSceneEntityTeleportScRsp" => Some(Self::CmdSceneEntityTeleportScRsp),
            "CmdSetClientPausedScRsp" => Some(Self::CmdSetClientPausedScRsp),
            "CmdEnterSceneCsReq" => Some(Self::CmdEnterSceneCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Njjdcpggfma {
    SceneCastSkillNone = 0,
    SceneCastSkillProjectileHit = 1,
    SceneCastSkillProjectileLifetimeFinish = 2,
}
impl Njjdcpggfma {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Njjdcpggfma::SceneCastSkillNone => "SCENE_CAST_SKILL_NONE",
            Njjdcpggfma::SceneCastSkillProjectileHit => "SCENE_CAST_SKILL_PROJECTILE_HIT",
            Njjdcpggfma::SceneCastSkillProjectileLifetimeFinish => {
                "SCENE_CAST_SKILL_PROJECTILE_LIFETIME_FINISH"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "SCENE_CAST_SKILL_NONE" => Some(Self::SceneCastSkillNone),
            "SCENE_CAST_SKILL_PROJECTILE_HIT" => Some(Self::SceneCastSkillProjectileHit),
            "SCENE_CAST_SKILL_PROJECTILE_LIFETIME_FINISH" => {
                Some(Self::SceneCastSkillProjectileLifetimeFinish)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Aggoobcfjlh {
    MonsterBattleTypeNone = 0,
    MonsterBattleTypeTriggerBattle = 1,
    MonsterBattleTypeDirectDieSimulateBattle = 2,
    MonsterBattleTypeDirectDieSkipBattle = 3,
    MonsterBattleTypeNoBattle = 4,
}
impl Aggoobcfjlh {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Aggoobcfjlh::MonsterBattleTypeNone => "MONSTER_BATTLE_TYPE_NONE",
            Aggoobcfjlh::MonsterBattleTypeTriggerBattle => {
                "MONSTER_BATTLE_TYPE_TRIGGER_BATTLE"
            }
            Aggoobcfjlh::MonsterBattleTypeDirectDieSimulateBattle => {
                "MONSTER_BATTLE_TYPE_DIRECT_DIE_SIMULATE_BATTLE"
            }
            Aggoobcfjlh::MonsterBattleTypeDirectDieSkipBattle => {
                "MONSTER_BATTLE_TYPE_DIRECT_DIE_SKIP_BATTLE"
            }
            Aggoobcfjlh::MonsterBattleTypeNoBattle => "MONSTER_BATTLE_TYPE_NO_BATTLE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "MONSTER_BATTLE_TYPE_NONE" => Some(Self::MonsterBattleTypeNone),
            "MONSTER_BATTLE_TYPE_TRIGGER_BATTLE" => {
                Some(Self::MonsterBattleTypeTriggerBattle)
            }
            "MONSTER_BATTLE_TYPE_DIRECT_DIE_SIMULATE_BATTLE" => {
                Some(Self::MonsterBattleTypeDirectDieSimulateBattle)
            }
            "MONSTER_BATTLE_TYPE_DIRECT_DIE_SKIP_BATTLE" => {
                Some(Self::MonsterBattleTypeDirectDieSkipBattle)
            }
            "MONSTER_BATTLE_TYPE_NO_BATTLE" => Some(Self::MonsterBattleTypeNoBattle),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Ffnhcbelgpd {
    EnterSceneReasonNone = 0,
    EnterSceneReasonChallengeTimeout = 1,
    EnterSceneReasonRogueTimeout = 2,
    EnterSceneReasonChangeStoryline = 3,
}
impl Ffnhcbelgpd {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Ffnhcbelgpd::EnterSceneReasonNone => "ENTER_SCENE_REASON_NONE",
            Ffnhcbelgpd::EnterSceneReasonChallengeTimeout => {
                "ENTER_SCENE_REASON_CHALLENGE_TIMEOUT"
            }
            Ffnhcbelgpd::EnterSceneReasonRogueTimeout => {
                "ENTER_SCENE_REASON_ROGUE_TIMEOUT"
            }
            Ffnhcbelgpd::EnterSceneReasonChangeStoryline => {
                "ENTER_SCENE_REASON_CHANGE_STORYLINE"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ENTER_SCENE_REASON_NONE" => Some(Self::EnterSceneReasonNone),
            "ENTER_SCENE_REASON_CHALLENGE_TIMEOUT" => {
                Some(Self::EnterSceneReasonChallengeTimeout)
            }
            "ENTER_SCENE_REASON_ROGUE_TIMEOUT" => {
                Some(Self::EnterSceneReasonRogueTimeout)
            }
            "ENTER_SCENE_REASON_CHANGE_STORYLINE" => {
                Some(Self::EnterSceneReasonChangeStoryline)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Kihbdaniehp {
    MapInfoChestTypeNone = 0,
    MapInfoChestTypeNormal = 101,
    MapInfoChestTypeChallenge = 102,
    MapInfoChestTypePuzzle = 104,
}
impl Kihbdaniehp {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Kihbdaniehp::MapInfoChestTypeNone => "MAP_INFO_CHEST_TYPE_NONE",
            Kihbdaniehp::MapInfoChestTypeNormal => "MAP_INFO_CHEST_TYPE_NORMAL",
            Kihbdaniehp::MapInfoChestTypeChallenge => "MAP_INFO_CHEST_TYPE_CHALLENGE",
            Kihbdaniehp::MapInfoChestTypePuzzle => "MAP_INFO_CHEST_TYPE_PUZZLE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "MAP_INFO_CHEST_TYPE_NONE" => Some(Self::MapInfoChestTypeNone),
            "MAP_INFO_CHEST_TYPE_NORMAL" => Some(Self::MapInfoChestTypeNormal),
            "MAP_INFO_CHEST_TYPE_CHALLENGE" => Some(Self::MapInfoChestTypeChallenge),
            "MAP_INFO_CHEST_TYPE_PUZZLE" => Some(Self::MapInfoChestTypePuzzle),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Oigihagkoib {
    GameplayCounterUpdateReasonNone = 0,
    GameplayCounterUpdateReasonActivate = 1,
    GameplayCounterUpdateReasonDeactivate = 2,
    GameplayCounterUpdateReasonChange = 3,
}
impl Oigihagkoib {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Oigihagkoib::GameplayCounterUpdateReasonNone => {
                "GAMEPLAY_COUNTER_UPDATE_REASON_NONE"
            }
            Oigihagkoib::GameplayCounterUpdateReasonActivate => {
                "GAMEPLAY_COUNTER_UPDATE_REASON_ACTIVATE"
            }
            Oigihagkoib::GameplayCounterUpdateReasonDeactivate => {
                "GAMEPLAY_COUNTER_UPDATE_REASON_DEACTIVATE"
            }
            Oigihagkoib::GameplayCounterUpdateReasonChange => {
                "GAMEPLAY_COUNTER_UPDATE_REASON_CHANGE"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "GAMEPLAY_COUNTER_UPDATE_REASON_NONE" => {
                Some(Self::GameplayCounterUpdateReasonNone)
            }
            "GAMEPLAY_COUNTER_UPDATE_REASON_ACTIVATE" => {
                Some(Self::GameplayCounterUpdateReasonActivate)
            }
            "GAMEPLAY_COUNTER_UPDATE_REASON_DEACTIVATE" => {
                Some(Self::GameplayCounterUpdateReasonDeactivate)
            }
            "GAMEPLAY_COUNTER_UPDATE_REASON_CHANGE" => {
                Some(Self::GameplayCounterUpdateReasonChange)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Njdmhcchfdj {
    SceneGroupRefreshTypeNone = 0,
    SceneGroupRefreshTypeLoaded = 1,
    SceneGroupRefreshTypeUnload = 2,
}
impl Njdmhcchfdj {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Njdmhcchfdj::SceneGroupRefreshTypeNone => "SCENE_GROUP_REFRESH_TYPE_NONE",
            Njdmhcchfdj::SceneGroupRefreshTypeLoaded => "SCENE_GROUP_REFRESH_TYPE_LOADED",
            Njdmhcchfdj::SceneGroupRefreshTypeUnload => "SCENE_GROUP_REFRESH_TYPE_UNLOAD",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "SCENE_GROUP_REFRESH_TYPE_NONE" => Some(Self::SceneGroupRefreshTypeNone),
            "SCENE_GROUP_REFRESH_TYPE_LOADED" => Some(Self::SceneGroupRefreshTypeLoaded),
            "SCENE_GROUP_REFRESH_TYPE_UNLOAD" => Some(Self::SceneGroupRefreshTypeUnload),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Blhamckfdhj {
    CmdServerPrefsTypeNone = 0,
    CmdGetAllServerPrefsDataScRsp = 6148,
    CmdGetServerPrefsDataCsReq = 6162,
    CmdUpdateServerPrefsDataScRsp = 6109,
    CmdGetAllServerPrefsDataCsReq = 6134,
    CmdGetServerPrefsDataScRsp = 6188,
    CmdUpdateServerPrefsDataCsReq = 6102,
}
impl Blhamckfdhj {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Blhamckfdhj::CmdServerPrefsTypeNone => "CmdServerPrefsTypeNone",
            Blhamckfdhj::CmdGetAllServerPrefsDataScRsp => "CmdGetAllServerPrefsDataScRsp",
            Blhamckfdhj::CmdGetServerPrefsDataCsReq => "CmdGetServerPrefsDataCsReq",
            Blhamckfdhj::CmdUpdateServerPrefsDataScRsp => "CmdUpdateServerPrefsDataScRsp",
            Blhamckfdhj::CmdGetAllServerPrefsDataCsReq => "CmdGetAllServerPrefsDataCsReq",
            Blhamckfdhj::CmdGetServerPrefsDataScRsp => "CmdGetServerPrefsDataScRsp",
            Blhamckfdhj::CmdUpdateServerPrefsDataCsReq => "CmdUpdateServerPrefsDataCsReq",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdServerPrefsTypeNone" => Some(Self::CmdServerPrefsTypeNone),
            "CmdGetAllServerPrefsDataScRsp" => Some(Self::CmdGetAllServerPrefsDataScRsp),
            "CmdGetServerPrefsDataCsReq" => Some(Self::CmdGetServerPrefsDataCsReq),
            "CmdUpdateServerPrefsDataScRsp" => Some(Self::CmdUpdateServerPrefsDataScRsp),
            "CmdGetAllServerPrefsDataCsReq" => Some(Self::CmdGetAllServerPrefsDataCsReq),
            "CmdGetServerPrefsDataScRsp" => Some(Self::CmdGetServerPrefsDataScRsp),
            "CmdUpdateServerPrefsDataCsReq" => Some(Self::CmdUpdateServerPrefsDataCsReq),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Ijnojppaebg {
    CmdShopTypeNone = 0,
    CmdGetShopListScRsp = 1548,
    CmdGetShopListCsReq = 1534,
    CmdTakeCityShopRewardCsReq = 1502,
    CmdBuyGoodsScRsp = 1588,
    CmdBuyGoodsCsReq = 1562,
    CmdTakeCityShopRewardScRsp = 1509,
    CmdCityShopInfoScNotify = 1519,
}
impl Ijnojppaebg {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Ijnojppaebg::CmdShopTypeNone => "CmdShopTypeNone",
            Ijnojppaebg::CmdGetShopListScRsp => "CmdGetShopListScRsp",
            Ijnojppaebg::CmdGetShopListCsReq => "CmdGetShopListCsReq",
            Ijnojppaebg::CmdTakeCityShopRewardCsReq => "CmdTakeCityShopRewardCsReq",
            Ijnojppaebg::CmdBuyGoodsScRsp => "CmdBuyGoodsScRsp",
            Ijnojppaebg::CmdBuyGoodsCsReq => "CmdBuyGoodsCsReq",
            Ijnojppaebg::CmdTakeCityShopRewardScRsp => "CmdTakeCityShopRewardScRsp",
            Ijnojppaebg::CmdCityShopInfoScNotify => "CmdCityShopInfoScNotify",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdShopTypeNone" => Some(Self::CmdShopTypeNone),
            "CmdGetShopListScRsp" => Some(Self::CmdGetShopListScRsp),
            "CmdGetShopListCsReq" => Some(Self::CmdGetShopListCsReq),
            "CmdTakeCityShopRewardCsReq" => Some(Self::CmdTakeCityShopRewardCsReq),
            "CmdBuyGoodsScRsp" => Some(Self::CmdBuyGoodsScRsp),
            "CmdBuyGoodsCsReq" => Some(Self::CmdBuyGoodsCsReq),
            "CmdTakeCityShopRewardScRsp" => Some(Self::CmdTakeCityShopRewardScRsp),
            "CmdCityShopInfoScNotify" => Some(Self::CmdCityShopInfoScNotify),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Hohcdddidom {
    CmdSpaceZooTypeNone = 0,
    CmdSpaceZooOpCatteryCsReq = 6719,
    CmdSpaceZooTakeScRsp = 6733,
    CmdSpaceZooBornCsReq = 6762,
    CmdSpaceZooOpCatteryScRsp = 6743,
    CmdSpaceZooExchangeItemCsReq = 6768,
    CmdSpaceZooDataScRsp = 6748,
    CmdSpaceZooBornScRsp = 6788,
    CmdSpaceZooTakeCsReq = 6706,
    CmdSpaceZooMutateScRsp = 6709,
    CmdSpaceZooCatUpdateNotify = 6745,
    CmdSpaceZooDeleteCatCsReq = 6786,
    CmdSpaceZooDeleteCatScRsp = 6729,
    CmdSpaceZooMutateCsReq = 6702,
    CmdSpaceZooDataCsReq = 6734,
    CmdSpaceZooExchangeItemScRsp = 6796,
}
impl Hohcdddidom {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Hohcdddidom::CmdSpaceZooTypeNone => "CmdSpaceZooTypeNone",
            Hohcdddidom::CmdSpaceZooOpCatteryCsReq => "CmdSpaceZooOpCatteryCsReq",
            Hohcdddidom::CmdSpaceZooTakeScRsp => "CmdSpaceZooTakeScRsp",
            Hohcdddidom::CmdSpaceZooBornCsReq => "CmdSpaceZooBornCsReq",
            Hohcdddidom::CmdSpaceZooOpCatteryScRsp => "CmdSpaceZooOpCatteryScRsp",
            Hohcdddidom::CmdSpaceZooExchangeItemCsReq => "CmdSpaceZooExchangeItemCsReq",
            Hohcdddidom::CmdSpaceZooDataScRsp => "CmdSpaceZooDataScRsp",
            Hohcdddidom::CmdSpaceZooBornScRsp => "CmdSpaceZooBornScRsp",
            Hohcdddidom::CmdSpaceZooTakeCsReq => "CmdSpaceZooTakeCsReq",
            Hohcdddidom::CmdSpaceZooMutateScRsp => "CmdSpaceZooMutateScRsp",
            Hohcdddidom::CmdSpaceZooCatUpdateNotify => "CmdSpaceZooCatUpdateNotify",
            Hohcdddidom::CmdSpaceZooDeleteCatCsReq => "CmdSpaceZooDeleteCatCsReq",
            Hohcdddidom::CmdSpaceZooDeleteCatScRsp => "CmdSpaceZooDeleteCatScRsp",
            Hohcdddidom::CmdSpaceZooMutateCsReq => "CmdSpaceZooMutateCsReq",
            Hohcdddidom::CmdSpaceZooDataCsReq => "CmdSpaceZooDataCsReq",
            Hohcdddidom::CmdSpaceZooExchangeItemScRsp => "CmdSpaceZooExchangeItemScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdSpaceZooTypeNone" => Some(Self::CmdSpaceZooTypeNone),
            "CmdSpaceZooOpCatteryCsReq" => Some(Self::CmdSpaceZooOpCatteryCsReq),
            "CmdSpaceZooTakeScRsp" => Some(Self::CmdSpaceZooTakeScRsp),
            "CmdSpaceZooBornCsReq" => Some(Self::CmdSpaceZooBornCsReq),
            "CmdSpaceZooOpCatteryScRsp" => Some(Self::CmdSpaceZooOpCatteryScRsp),
            "CmdSpaceZooExchangeItemCsReq" => Some(Self::CmdSpaceZooExchangeItemCsReq),
            "CmdSpaceZooDataScRsp" => Some(Self::CmdSpaceZooDataScRsp),
            "CmdSpaceZooBornScRsp" => Some(Self::CmdSpaceZooBornScRsp),
            "CmdSpaceZooTakeCsReq" => Some(Self::CmdSpaceZooTakeCsReq),
            "CmdSpaceZooMutateScRsp" => Some(Self::CmdSpaceZooMutateScRsp),
            "CmdSpaceZooCatUpdateNotify" => Some(Self::CmdSpaceZooCatUpdateNotify),
            "CmdSpaceZooDeleteCatCsReq" => Some(Self::CmdSpaceZooDeleteCatCsReq),
            "CmdSpaceZooDeleteCatScRsp" => Some(Self::CmdSpaceZooDeleteCatScRsp),
            "CmdSpaceZooMutateCsReq" => Some(Self::CmdSpaceZooMutateCsReq),
            "CmdSpaceZooDataCsReq" => Some(Self::CmdSpaceZooDataCsReq),
            "CmdSpaceZooExchangeItemScRsp" => Some(Self::CmdSpaceZooExchangeItemScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Clfdalnicmi {
    CmdStoryLineTypeNone = 0,
    CmdChangeStoryLineCsReq = 6288,
    CmdGetStoryLineInfoScRsp = 6248,
    CmdStoryLineInfoScNotify = 6262,
    CmdGetStoryLineInfoCsReq = 6234,
    CmdChangeStoryLineScRsp = 6202,
    CmdChangeStoryLineFinishScNotify = 6209,
    CmdStoryLineTrialAvatarChangeScNotify = 6219,
}
impl Clfdalnicmi {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Clfdalnicmi::CmdStoryLineTypeNone => "CmdStoryLineTypeNone",
            Clfdalnicmi::CmdChangeStoryLineCsReq => "CmdChangeStoryLineCsReq",
            Clfdalnicmi::CmdGetStoryLineInfoScRsp => "CmdGetStoryLineInfoScRsp",
            Clfdalnicmi::CmdStoryLineInfoScNotify => "CmdStoryLineInfoScNotify",
            Clfdalnicmi::CmdGetStoryLineInfoCsReq => "CmdGetStoryLineInfoCsReq",
            Clfdalnicmi::CmdChangeStoryLineScRsp => "CmdChangeStoryLineScRsp",
            Clfdalnicmi::CmdChangeStoryLineFinishScNotify => {
                "CmdChangeStoryLineFinishScNotify"
            }
            Clfdalnicmi::CmdStoryLineTrialAvatarChangeScNotify => {
                "CmdStoryLineTrialAvatarChangeScNotify"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdStoryLineTypeNone" => Some(Self::CmdStoryLineTypeNone),
            "CmdChangeStoryLineCsReq" => Some(Self::CmdChangeStoryLineCsReq),
            "CmdGetStoryLineInfoScRsp" => Some(Self::CmdGetStoryLineInfoScRsp),
            "CmdStoryLineInfoScNotify" => Some(Self::CmdStoryLineInfoScNotify),
            "CmdGetStoryLineInfoCsReq" => Some(Self::CmdGetStoryLineInfoCsReq),
            "CmdChangeStoryLineScRsp" => Some(Self::CmdChangeStoryLineScRsp),
            "CmdChangeStoryLineFinishScNotify" => {
                Some(Self::CmdChangeStoryLineFinishScNotify)
            }
            "CmdStoryLineTrialAvatarChangeScNotify" => {
                Some(Self::CmdStoryLineTrialAvatarChangeScNotify)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Dcbpclncjec {
    ChangeStoryLineActionNone = 0,
    ChangeStoryLineActionFinishAction = 1,
    ChangeStoryLineActionClient = 2,
    ChangeStoryLineActionCustomOp = 3,
}
impl Dcbpclncjec {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Dcbpclncjec::ChangeStoryLineActionNone => "ChangeStoryLineAction_None",
            Dcbpclncjec::ChangeStoryLineActionFinishAction => {
                "ChangeStoryLineAction_FinishAction"
            }
            Dcbpclncjec::ChangeStoryLineActionClient => "ChangeStoryLineAction_Client",
            Dcbpclncjec::ChangeStoryLineActionCustomOp => {
                "ChangeStoryLineAction_CustomOP"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "ChangeStoryLineAction_None" => Some(Self::ChangeStoryLineActionNone),
            "ChangeStoryLineAction_FinishAction" => {
                Some(Self::ChangeStoryLineActionFinishAction)
            }
            "ChangeStoryLineAction_Client" => Some(Self::ChangeStoryLineActionClient),
            "ChangeStoryLineAction_CustomOP" => Some(Self::ChangeStoryLineActionCustomOp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Hhlllkbgleg {
    CmdStrongChallengeActivityTypeNone = 0,
    CmdEnterStrongChallengeActivityStageScRsp = 6688,
    CmdEnterStrongChallengeActivityStageCsReq = 6662,
    CmdGetStrongChallengeActivityDataScRsp = 6648,
    CmdGetStrongChallengeActivityDataCsReq = 6634,
    CmdStrongChallengeActivityBattleEndScNotify = 6602,
}
impl Hhlllkbgleg {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Hhlllkbgleg::CmdStrongChallengeActivityTypeNone => {
                "CmdStrongChallengeActivityTypeNone"
            }
            Hhlllkbgleg::CmdEnterStrongChallengeActivityStageScRsp => {
                "CmdEnterStrongChallengeActivityStageScRsp"
            }
            Hhlllkbgleg::CmdEnterStrongChallengeActivityStageCsReq => {
                "CmdEnterStrongChallengeActivityStageCsReq"
            }
            Hhlllkbgleg::CmdGetStrongChallengeActivityDataScRsp => {
                "CmdGetStrongChallengeActivityDataScRsp"
            }
            Hhlllkbgleg::CmdGetStrongChallengeActivityDataCsReq => {
                "CmdGetStrongChallengeActivityDataCsReq"
            }
            Hhlllkbgleg::CmdStrongChallengeActivityBattleEndScNotify => {
                "CmdStrongChallengeActivityBattleEndScNotify"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdStrongChallengeActivityTypeNone" => {
                Some(Self::CmdStrongChallengeActivityTypeNone)
            }
            "CmdEnterStrongChallengeActivityStageScRsp" => {
                Some(Self::CmdEnterStrongChallengeActivityStageScRsp)
            }
            "CmdEnterStrongChallengeActivityStageCsReq" => {
                Some(Self::CmdEnterStrongChallengeActivityStageCsReq)
            }
            "CmdGetStrongChallengeActivityDataScRsp" => {
                Some(Self::CmdGetStrongChallengeActivityDataScRsp)
            }
            "CmdGetStrongChallengeActivityDataCsReq" => {
                Some(Self::CmdGetStrongChallengeActivityDataCsReq)
            }
            "CmdStrongChallengeActivityBattleEndScNotify" => {
                Some(Self::CmdStrongChallengeActivityBattleEndScNotify)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Dgflckcfdme {
    CmdPlayerSyncNone = 0,
    CmdPlayerSyncScNotify = 634,
}
impl Dgflckcfdme {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Dgflckcfdme::CmdPlayerSyncNone => "CmdPlayerSyncNone",
            Dgflckcfdme::CmdPlayerSyncScNotify => "CmdPlayerSyncScNotify",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdPlayerSyncNone" => Some(Self::CmdPlayerSyncNone),
            "CmdPlayerSyncScNotify" => Some(Self::CmdPlayerSyncScNotify),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Ojecndgmmji {
    CmdTalkRewardTypeNone = 0,
    CmdGetNpcTakenRewardCsReq = 2134,
    CmdGetFirstTalkNpcCsReq = 2102,
    CmdFinishFirstTalkByPerformanceNpcScRsp = 2106,
    CmdSelectInclinationTextScRsp = 2129,
    CmdGetNpcTakenRewardScRsp = 2148,
    CmdTakeTalkRewardScRsp = 2188,
    CmdGetFirstTalkByPerformanceNpcScRsp = 2168,
    CmdSelectInclinationTextCsReq = 2186,
    CmdFinishFirstTalkNpcScRsp = 2143,
    CmdFinishFirstTalkByPerformanceNpcCsReq = 2196,
    CmdGetFirstTalkByPerformanceNpcCsReq = 2145,
    CmdFinishFirstTalkNpcCsReq = 2119,
    CmdTakeTalkRewardCsReq = 2162,
    CmdGetFirstTalkNpcScRsp = 2109,
}
impl Ojecndgmmji {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Ojecndgmmji::CmdTalkRewardTypeNone => "CmdTalkRewardTypeNone",
            Ojecndgmmji::CmdGetNpcTakenRewardCsReq => "CmdGetNpcTakenRewardCsReq",
            Ojecndgmmji::CmdGetFirstTalkNpcCsReq => "CmdGetFirstTalkNpcCsReq",
            Ojecndgmmji::CmdFinishFirstTalkByPerformanceNpcScRsp => {
                "CmdFinishFirstTalkByPerformanceNpcScRsp"
            }
            Ojecndgmmji::CmdSelectInclinationTextScRsp => "CmdSelectInclinationTextScRsp",
            Ojecndgmmji::CmdGetNpcTakenRewardScRsp => "CmdGetNpcTakenRewardScRsp",
            Ojecndgmmji::CmdTakeTalkRewardScRsp => "CmdTakeTalkRewardScRsp",
            Ojecndgmmji::CmdGetFirstTalkByPerformanceNpcScRsp => {
                "CmdGetFirstTalkByPerformanceNpcScRsp"
            }
            Ojecndgmmji::CmdSelectInclinationTextCsReq => "CmdSelectInclinationTextCsReq",
            Ojecndgmmji::CmdFinishFirstTalkNpcScRsp => "CmdFinishFirstTalkNpcScRsp",
            Ojecndgmmji::CmdFinishFirstTalkByPerformanceNpcCsReq => {
                "CmdFinishFirstTalkByPerformanceNpcCsReq"
            }
            Ojecndgmmji::CmdGetFirstTalkByPerformanceNpcCsReq => {
                "CmdGetFirstTalkByPerformanceNpcCsReq"
            }
            Ojecndgmmji::CmdFinishFirstTalkNpcCsReq => "CmdFinishFirstTalkNpcCsReq",
            Ojecndgmmji::CmdTakeTalkRewardCsReq => "CmdTakeTalkRewardCsReq",
            Ojecndgmmji::CmdGetFirstTalkNpcScRsp => "CmdGetFirstTalkNpcScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdTalkRewardTypeNone" => Some(Self::CmdTalkRewardTypeNone),
            "CmdGetNpcTakenRewardCsReq" => Some(Self::CmdGetNpcTakenRewardCsReq),
            "CmdGetFirstTalkNpcCsReq" => Some(Self::CmdGetFirstTalkNpcCsReq),
            "CmdFinishFirstTalkByPerformanceNpcScRsp" => {
                Some(Self::CmdFinishFirstTalkByPerformanceNpcScRsp)
            }
            "CmdSelectInclinationTextScRsp" => Some(Self::CmdSelectInclinationTextScRsp),
            "CmdGetNpcTakenRewardScRsp" => Some(Self::CmdGetNpcTakenRewardScRsp),
            "CmdTakeTalkRewardScRsp" => Some(Self::CmdTakeTalkRewardScRsp),
            "CmdGetFirstTalkByPerformanceNpcScRsp" => {
                Some(Self::CmdGetFirstTalkByPerformanceNpcScRsp)
            }
            "CmdSelectInclinationTextCsReq" => Some(Self::CmdSelectInclinationTextCsReq),
            "CmdFinishFirstTalkNpcScRsp" => Some(Self::CmdFinishFirstTalkNpcScRsp),
            "CmdFinishFirstTalkByPerformanceNpcCsReq" => {
                Some(Self::CmdFinishFirstTalkByPerformanceNpcCsReq)
            }
            "CmdGetFirstTalkByPerformanceNpcCsReq" => {
                Some(Self::CmdGetFirstTalkByPerformanceNpcCsReq)
            }
            "CmdFinishFirstTalkNpcCsReq" => Some(Self::CmdFinishFirstTalkNpcCsReq),
            "CmdTakeTalkRewardCsReq" => Some(Self::CmdTakeTalkRewardCsReq),
            "CmdGetFirstTalkNpcScRsp" => Some(Self::CmdGetFirstTalkNpcScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Hpefkjfflap {
    CmdTelevisionActivityTypeNone = 0,
    CmdEnterTelevisionActivityStageScRsp = 6980,
    CmdEnterTelevisionActivityStageCsReq = 6977,
    CmdTelevisionActivityDataChangeScNotify = 6973,
    CmdGetTelevisionActivityDataCsReq = 6961,
    CmdGetTelevisionActivityDataScRsp = 6978,
    CmdTelevisionActivityBattleEndScNotify = 6979,
}
impl Hpefkjfflap {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Hpefkjfflap::CmdTelevisionActivityTypeNone => "CmdTelevisionActivityTypeNone",
            Hpefkjfflap::CmdEnterTelevisionActivityStageScRsp => {
                "CmdEnterTelevisionActivityStageScRsp"
            }
            Hpefkjfflap::CmdEnterTelevisionActivityStageCsReq => {
                "CmdEnterTelevisionActivityStageCsReq"
            }
            Hpefkjfflap::CmdTelevisionActivityDataChangeScNotify => {
                "CmdTelevisionActivityDataChangeScNotify"
            }
            Hpefkjfflap::CmdGetTelevisionActivityDataCsReq => {
                "CmdGetTelevisionActivityDataCsReq"
            }
            Hpefkjfflap::CmdGetTelevisionActivityDataScRsp => {
                "CmdGetTelevisionActivityDataScRsp"
            }
            Hpefkjfflap::CmdTelevisionActivityBattleEndScNotify => {
                "CmdTelevisionActivityBattleEndScNotify"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdTelevisionActivityTypeNone" => Some(Self::CmdTelevisionActivityTypeNone),
            "CmdEnterTelevisionActivityStageScRsp" => {
                Some(Self::CmdEnterTelevisionActivityStageScRsp)
            }
            "CmdEnterTelevisionActivityStageCsReq" => {
                Some(Self::CmdEnterTelevisionActivityStageCsReq)
            }
            "CmdTelevisionActivityDataChangeScNotify" => {
                Some(Self::CmdTelevisionActivityDataChangeScNotify)
            }
            "CmdGetTelevisionActivityDataCsReq" => {
                Some(Self::CmdGetTelevisionActivityDataCsReq)
            }
            "CmdGetTelevisionActivityDataScRsp" => {
                Some(Self::CmdGetTelevisionActivityDataScRsp)
            }
            "CmdTelevisionActivityBattleEndScNotify" => {
                Some(Self::CmdTelevisionActivityBattleEndScNotify)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Lopidcokdih {
    CmdTextJoinTypeNone = 0,
    CmdTextJoinSaveCsReq = 3834,
    CmdTextJoinBatchSaveCsReq = 3802,
    CmdTextJoinBatchSaveScRsp = 3809,
    CmdTextJoinQueryScRsp = 3888,
    CmdTextJoinQueryCsReq = 3862,
    CmdTextJoinSaveScRsp = 3848,
}
impl Lopidcokdih {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Lopidcokdih::CmdTextJoinTypeNone => "CmdTextJoinTypeNone",
            Lopidcokdih::CmdTextJoinSaveCsReq => "CmdTextJoinSaveCsReq",
            Lopidcokdih::CmdTextJoinBatchSaveCsReq => "CmdTextJoinBatchSaveCsReq",
            Lopidcokdih::CmdTextJoinBatchSaveScRsp => "CmdTextJoinBatchSaveScRsp",
            Lopidcokdih::CmdTextJoinQueryScRsp => "CmdTextJoinQueryScRsp",
            Lopidcokdih::CmdTextJoinQueryCsReq => "CmdTextJoinQueryCsReq",
            Lopidcokdih::CmdTextJoinSaveScRsp => "CmdTextJoinSaveScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdTextJoinTypeNone" => Some(Self::CmdTextJoinTypeNone),
            "CmdTextJoinSaveCsReq" => Some(Self::CmdTextJoinSaveCsReq),
            "CmdTextJoinBatchSaveCsReq" => Some(Self::CmdTextJoinBatchSaveCsReq),
            "CmdTextJoinBatchSaveScRsp" => Some(Self::CmdTextJoinBatchSaveScRsp),
            "CmdTextJoinQueryScRsp" => Some(Self::CmdTextJoinQueryScRsp),
            "CmdTextJoinQueryCsReq" => Some(Self::CmdTextJoinQueryCsReq),
            "CmdTextJoinSaveScRsp" => Some(Self::CmdTextJoinSaveScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Oajoflcacce {
    CmdTrainVisitorTypeNone = 0,
    CmdTakeTrainVisitorUntakenBehaviorRewardScRsp = 3729,
    CmdGetTrainVisitorRegisterCsReq = 3719,
    CmdGetTrainVisitorBehaviorCsReq = 3762,
    CmdTrainVisitorBehaviorFinishCsReq = 3734,
    CmdGetTrainVisitorBehaviorScRsp = 3788,
    CmdTakeTrainVisitorUntakenBehaviorRewardCsReq = 3786,
    CmdTrainVisitorRewardSendNotify = 3709,
    CmdShowNewSupplementVisitorCsReq = 3745,
    CmdGetTrainVisitorRegisterScRsp = 3743,
    CmdTrainVisitorBehaviorFinishScRsp = 3748,
    CmdShowNewSupplementVisitorScRsp = 3768,
    CmdTrainRefreshTimeNotify = 3702,
}
impl Oajoflcacce {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Oajoflcacce::CmdTrainVisitorTypeNone => "CmdTrainVisitorTypeNone",
            Oajoflcacce::CmdTakeTrainVisitorUntakenBehaviorRewardScRsp => {
                "CmdTakeTrainVisitorUntakenBehaviorRewardScRsp"
            }
            Oajoflcacce::CmdGetTrainVisitorRegisterCsReq => {
                "CmdGetTrainVisitorRegisterCsReq"
            }
            Oajoflcacce::CmdGetTrainVisitorBehaviorCsReq => {
                "CmdGetTrainVisitorBehaviorCsReq"
            }
            Oajoflcacce::CmdTrainVisitorBehaviorFinishCsReq => {
                "CmdTrainVisitorBehaviorFinishCsReq"
            }
            Oajoflcacce::CmdGetTrainVisitorBehaviorScRsp => {
                "CmdGetTrainVisitorBehaviorScRsp"
            }
            Oajoflcacce::CmdTakeTrainVisitorUntakenBehaviorRewardCsReq => {
                "CmdTakeTrainVisitorUntakenBehaviorRewardCsReq"
            }
            Oajoflcacce::CmdTrainVisitorRewardSendNotify => {
                "CmdTrainVisitorRewardSendNotify"
            }
            Oajoflcacce::CmdShowNewSupplementVisitorCsReq => {
                "CmdShowNewSupplementVisitorCsReq"
            }
            Oajoflcacce::CmdGetTrainVisitorRegisterScRsp => {
                "CmdGetTrainVisitorRegisterScRsp"
            }
            Oajoflcacce::CmdTrainVisitorBehaviorFinishScRsp => {
                "CmdTrainVisitorBehaviorFinishScRsp"
            }
            Oajoflcacce::CmdShowNewSupplementVisitorScRsp => {
                "CmdShowNewSupplementVisitorScRsp"
            }
            Oajoflcacce::CmdTrainRefreshTimeNotify => "CmdTrainRefreshTimeNotify",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdTrainVisitorTypeNone" => Some(Self::CmdTrainVisitorTypeNone),
            "CmdTakeTrainVisitorUntakenBehaviorRewardScRsp" => {
                Some(Self::CmdTakeTrainVisitorUntakenBehaviorRewardScRsp)
            }
            "CmdGetTrainVisitorRegisterCsReq" => {
                Some(Self::CmdGetTrainVisitorRegisterCsReq)
            }
            "CmdGetTrainVisitorBehaviorCsReq" => {
                Some(Self::CmdGetTrainVisitorBehaviorCsReq)
            }
            "CmdTrainVisitorBehaviorFinishCsReq" => {
                Some(Self::CmdTrainVisitorBehaviorFinishCsReq)
            }
            "CmdGetTrainVisitorBehaviorScRsp" => {
                Some(Self::CmdGetTrainVisitorBehaviorScRsp)
            }
            "CmdTakeTrainVisitorUntakenBehaviorRewardCsReq" => {
                Some(Self::CmdTakeTrainVisitorUntakenBehaviorRewardCsReq)
            }
            "CmdTrainVisitorRewardSendNotify" => {
                Some(Self::CmdTrainVisitorRewardSendNotify)
            }
            "CmdShowNewSupplementVisitorCsReq" => {
                Some(Self::CmdShowNewSupplementVisitorCsReq)
            }
            "CmdGetTrainVisitorRegisterScRsp" => {
                Some(Self::CmdGetTrainVisitorRegisterScRsp)
            }
            "CmdTrainVisitorBehaviorFinishScRsp" => {
                Some(Self::CmdTrainVisitorBehaviorFinishScRsp)
            }
            "CmdShowNewSupplementVisitorScRsp" => {
                Some(Self::CmdShowNewSupplementVisitorScRsp)
            }
            "CmdTrainRefreshTimeNotify" => Some(Self::CmdTrainRefreshTimeNotify),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Mindihbkmie {
    TrainVisitorRewardSendNone = 0,
    TrainVisitorRewardSendRegister = 1,
    TrainVisitorRewardSendMission = 2,
}
impl Mindihbkmie {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Mindihbkmie::TrainVisitorRewardSendNone => "TRAIN_VISITOR_REWARD_SEND_NONE",
            Mindihbkmie::TrainVisitorRewardSendRegister => {
                "TRAIN_VISITOR_REWARD_SEND_REGISTER"
            }
            Mindihbkmie::TrainVisitorRewardSendMission => {
                "TRAIN_VISITOR_REWARD_SEND_MISSION"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "TRAIN_VISITOR_REWARD_SEND_NONE" => Some(Self::TrainVisitorRewardSendNone),
            "TRAIN_VISITOR_REWARD_SEND_REGISTER" => {
                Some(Self::TrainVisitorRewardSendRegister)
            }
            "TRAIN_VISITOR_REWARD_SEND_MISSION" => {
                Some(Self::TrainVisitorRewardSendMission)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Edognimhmai {
    TrainVisitorStatusNone = 0,
    TrainVisitorStatusInit = 1,
    TrainVisitorStatusGetOn = 2,
    TrainVisitorStatusGetOff = 3,
}
impl Edognimhmai {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Edognimhmai::TrainVisitorStatusNone => "TRAIN_VISITOR_STATUS_NONE",
            Edognimhmai::TrainVisitorStatusInit => "TRAIN_VISITOR_STATUS_INIT",
            Edognimhmai::TrainVisitorStatusGetOn => "TRAIN_VISITOR_STATUS_GET_ON",
            Edognimhmai::TrainVisitorStatusGetOff => "TRAIN_VISITOR_STATUS_GET_OFF",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "TRAIN_VISITOR_STATUS_NONE" => Some(Self::TrainVisitorStatusNone),
            "TRAIN_VISITOR_STATUS_INIT" => Some(Self::TrainVisitorStatusInit),
            "TRAIN_VISITOR_STATUS_GET_ON" => Some(Self::TrainVisitorStatusGetOn),
            "TRAIN_VISITOR_STATUS_GET_OFF" => Some(Self::TrainVisitorStatusGetOff),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Pnbikakpngm {
    TrainVisitorRegisterGetTypeNone = 0,
    TrainVisitorRegisterGetTypeAuto = 1,
    TrainVisitorRegisterGetTypeManual = 2,
}
impl Pnbikakpngm {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Pnbikakpngm::TrainVisitorRegisterGetTypeNone => {
                "TRAIN_VISITOR_REGISTER_GET_TYPE_NONE"
            }
            Pnbikakpngm::TrainVisitorRegisterGetTypeAuto => {
                "TRAIN_VISITOR_REGISTER_GET_TYPE_AUTO"
            }
            Pnbikakpngm::TrainVisitorRegisterGetTypeManual => {
                "TRAIN_VISITOR_REGISTER_GET_TYPE_MANUAL"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "TRAIN_VISITOR_REGISTER_GET_TYPE_NONE" => {
                Some(Self::TrainVisitorRegisterGetTypeNone)
            }
            "TRAIN_VISITOR_REGISTER_GET_TYPE_AUTO" => {
                Some(Self::TrainVisitorRegisterGetTypeAuto)
            }
            "TRAIN_VISITOR_REGISTER_GET_TYPE_MANUAL" => {
                Some(Self::TrainVisitorRegisterGetTypeManual)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Ggcccfoaihl {
    CmdTravelBrochureNone = 0,
    CmdTravelBrochureUpdatePasterPosCsReq = 6445,
    CmdTravelBrochureApplyPasterListCsReq = 6416,
    CmdTravelBrochureGetDataCsReq = 6434,
    CmdTravelBrochureSetPageDescStatusScRsp = 6442,
    CmdTravelBrochureSelectMessageScRsp = 6409,
    CmdTravelBrochurePageResetScRsp = 6439,
    CmdTravelBrochurePageUnlockScNotify = 6462,
    CmdTravelBrochureSetCustomValueScRsp = 6459,
    CmdTravelBrochureApplyPasterScRsp = 6443,
    CmdTravelBrochureSetPageDescStatusCsReq = 6495,
    CmdTravelBrochureGetPasterScNotify = 6496,
    CmdTravelBrochureRemovePasterScRsp = 6429,
    CmdTravelBrochureApplyPasterListScRsp = 6430,
    CmdTravelBrochurePageResetCsReq = 6437,
    CmdTravelBrochureUpdatePasterPosScRsp = 6468,
    CmdTravelBrochureApplyPasterCsReq = 6419,
    CmdTravelBrochureSetCustomValueCsReq = 6433,
    CmdTravelBrochureRemovePasterCsReq = 6486,
    CmdTravelBrochureSelectMessageCsReq = 6402,
    CmdTravelBrochureGetDataScRsp = 6448,
}
impl Ggcccfoaihl {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Ggcccfoaihl::CmdTravelBrochureNone => "CmdTravelBrochureNone",
            Ggcccfoaihl::CmdTravelBrochureUpdatePasterPosCsReq => {
                "CmdTravelBrochureUpdatePasterPosCsReq"
            }
            Ggcccfoaihl::CmdTravelBrochureApplyPasterListCsReq => {
                "CmdTravelBrochureApplyPasterListCsReq"
            }
            Ggcccfoaihl::CmdTravelBrochureGetDataCsReq => "CmdTravelBrochureGetDataCsReq",
            Ggcccfoaihl::CmdTravelBrochureSetPageDescStatusScRsp => {
                "CmdTravelBrochureSetPageDescStatusScRsp"
            }
            Ggcccfoaihl::CmdTravelBrochureSelectMessageScRsp => {
                "CmdTravelBrochureSelectMessageScRsp"
            }
            Ggcccfoaihl::CmdTravelBrochurePageResetScRsp => {
                "CmdTravelBrochurePageResetScRsp"
            }
            Ggcccfoaihl::CmdTravelBrochurePageUnlockScNotify => {
                "CmdTravelBrochurePageUnlockScNotify"
            }
            Ggcccfoaihl::CmdTravelBrochureSetCustomValueScRsp => {
                "CmdTravelBrochureSetCustomValueScRsp"
            }
            Ggcccfoaihl::CmdTravelBrochureApplyPasterScRsp => {
                "CmdTravelBrochureApplyPasterScRsp"
            }
            Ggcccfoaihl::CmdTravelBrochureSetPageDescStatusCsReq => {
                "CmdTravelBrochureSetPageDescStatusCsReq"
            }
            Ggcccfoaihl::CmdTravelBrochureGetPasterScNotify => {
                "CmdTravelBrochureGetPasterScNotify"
            }
            Ggcccfoaihl::CmdTravelBrochureRemovePasterScRsp => {
                "CmdTravelBrochureRemovePasterScRsp"
            }
            Ggcccfoaihl::CmdTravelBrochureApplyPasterListScRsp => {
                "CmdTravelBrochureApplyPasterListScRsp"
            }
            Ggcccfoaihl::CmdTravelBrochurePageResetCsReq => {
                "CmdTravelBrochurePageResetCsReq"
            }
            Ggcccfoaihl::CmdTravelBrochureUpdatePasterPosScRsp => {
                "CmdTravelBrochureUpdatePasterPosScRsp"
            }
            Ggcccfoaihl::CmdTravelBrochureApplyPasterCsReq => {
                "CmdTravelBrochureApplyPasterCsReq"
            }
            Ggcccfoaihl::CmdTravelBrochureSetCustomValueCsReq => {
                "CmdTravelBrochureSetCustomValueCsReq"
            }
            Ggcccfoaihl::CmdTravelBrochureRemovePasterCsReq => {
                "CmdTravelBrochureRemovePasterCsReq"
            }
            Ggcccfoaihl::CmdTravelBrochureSelectMessageCsReq => {
                "CmdTravelBrochureSelectMessageCsReq"
            }
            Ggcccfoaihl::CmdTravelBrochureGetDataScRsp => "CmdTravelBrochureGetDataScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdTravelBrochureNone" => Some(Self::CmdTravelBrochureNone),
            "CmdTravelBrochureUpdatePasterPosCsReq" => {
                Some(Self::CmdTravelBrochureUpdatePasterPosCsReq)
            }
            "CmdTravelBrochureApplyPasterListCsReq" => {
                Some(Self::CmdTravelBrochureApplyPasterListCsReq)
            }
            "CmdTravelBrochureGetDataCsReq" => Some(Self::CmdTravelBrochureGetDataCsReq),
            "CmdTravelBrochureSetPageDescStatusScRsp" => {
                Some(Self::CmdTravelBrochureSetPageDescStatusScRsp)
            }
            "CmdTravelBrochureSelectMessageScRsp" => {
                Some(Self::CmdTravelBrochureSelectMessageScRsp)
            }
            "CmdTravelBrochurePageResetScRsp" => {
                Some(Self::CmdTravelBrochurePageResetScRsp)
            }
            "CmdTravelBrochurePageUnlockScNotify" => {
                Some(Self::CmdTravelBrochurePageUnlockScNotify)
            }
            "CmdTravelBrochureSetCustomValueScRsp" => {
                Some(Self::CmdTravelBrochureSetCustomValueScRsp)
            }
            "CmdTravelBrochureApplyPasterScRsp" => {
                Some(Self::CmdTravelBrochureApplyPasterScRsp)
            }
            "CmdTravelBrochureSetPageDescStatusCsReq" => {
                Some(Self::CmdTravelBrochureSetPageDescStatusCsReq)
            }
            "CmdTravelBrochureGetPasterScNotify" => {
                Some(Self::CmdTravelBrochureGetPasterScNotify)
            }
            "CmdTravelBrochureRemovePasterScRsp" => {
                Some(Self::CmdTravelBrochureRemovePasterScRsp)
            }
            "CmdTravelBrochureApplyPasterListScRsp" => {
                Some(Self::CmdTravelBrochureApplyPasterListScRsp)
            }
            "CmdTravelBrochurePageResetCsReq" => {
                Some(Self::CmdTravelBrochurePageResetCsReq)
            }
            "CmdTravelBrochureUpdatePasterPosScRsp" => {
                Some(Self::CmdTravelBrochureUpdatePasterPosScRsp)
            }
            "CmdTravelBrochureApplyPasterCsReq" => {
                Some(Self::CmdTravelBrochureApplyPasterCsReq)
            }
            "CmdTravelBrochureSetCustomValueCsReq" => {
                Some(Self::CmdTravelBrochureSetCustomValueCsReq)
            }
            "CmdTravelBrochureRemovePasterCsReq" => {
                Some(Self::CmdTravelBrochureRemovePasterCsReq)
            }
            "CmdTravelBrochureSelectMessageCsReq" => {
                Some(Self::CmdTravelBrochureSelectMessageCsReq)
            }
            "CmdTravelBrochureGetDataScRsp" => Some(Self::CmdTravelBrochureGetDataScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Nhnehbekhhj {
    PageNone = 0,
    PageUnlocked = 1,
    PageInteracted = 2,
}
impl Nhnehbekhhj {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Nhnehbekhhj::PageNone => "PAGE_NONE",
            Nhnehbekhhj::PageUnlocked => "PAGE_UNLOCKED",
            Nhnehbekhhj::PageInteracted => "PAGE_INTERACTED",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "PAGE_NONE" => Some(Self::PageNone),
            "PAGE_UNLOCKED" => Some(Self::PageUnlocked),
            "PAGE_INTERACTED" => Some(Self::PageInteracted),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Pefolbeomfh {
    PageDescNone = 0,
    PageDescShowDetail = 1,
    PageDescCollapse = 2,
}
impl Pefolbeomfh {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Pefolbeomfh::PageDescNone => "PAGE_DESC_NONE",
            Pefolbeomfh::PageDescShowDetail => "PAGE_DESC_SHOW_DETAIL",
            Pefolbeomfh::PageDescCollapse => "PAGE_DESC_COLLAPSE",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "PAGE_DESC_NONE" => Some(Self::PageDescNone),
            "PAGE_DESC_SHOW_DETAIL" => Some(Self::PageDescShowDetail),
            "PAGE_DESC_COLLAPSE" => Some(Self::PageDescCollapse),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Gaifgoihffa {
    CmdTreasureDungeonTypeNone = 0,
    CmdUseTreasureDungeonItemScRsp = 4430,
    CmdUseTreasureDungeonItemCsReq = 4416,
    CmdOpenTreasureDungeonGridScRsp = 4459,
    CmdQuitTreasureDungeonCsReq = 4485,
    CmdQuitTreasureDungeonScRsp = 4456,
    CmdOpenTreasureDungeonGridCsReq = 4433,
    CmdFightTreasureDungeonMonsterCsReq = 4495,
    CmdTreasureDungeonDataScNotify = 4434,
    CmdFightTreasureDungeonMonsterScRsp = 4442,
    CmdInteractTreasureDungeonGridScRsp = 4439,
    CmdTreasureDungeonFinishScNotify = 4448,
    CmdGetTreasureDungeonActivityDataCsReq = 4445,
    CmdEnterTreasureDungeonCsReq = 4496,
    CmdGetTreasureDungeonActivityDataScRsp = 4468,
    CmdInteractTreasureDungeonGridCsReq = 4437,
    CmdEnterTreasureDungeonScRsp = 4406,
}
impl Gaifgoihffa {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Gaifgoihffa::CmdTreasureDungeonTypeNone => "CmdTreasureDungeonTypeNone",
            Gaifgoihffa::CmdUseTreasureDungeonItemScRsp => {
                "CmdUseTreasureDungeonItemScRsp"
            }
            Gaifgoihffa::CmdUseTreasureDungeonItemCsReq => {
                "CmdUseTreasureDungeonItemCsReq"
            }
            Gaifgoihffa::CmdOpenTreasureDungeonGridScRsp => {
                "CmdOpenTreasureDungeonGridScRsp"
            }
            Gaifgoihffa::CmdQuitTreasureDungeonCsReq => "CmdQuitTreasureDungeonCsReq",
            Gaifgoihffa::CmdQuitTreasureDungeonScRsp => "CmdQuitTreasureDungeonScRsp",
            Gaifgoihffa::CmdOpenTreasureDungeonGridCsReq => {
                "CmdOpenTreasureDungeonGridCsReq"
            }
            Gaifgoihffa::CmdFightTreasureDungeonMonsterCsReq => {
                "CmdFightTreasureDungeonMonsterCsReq"
            }
            Gaifgoihffa::CmdTreasureDungeonDataScNotify => {
                "CmdTreasureDungeonDataScNotify"
            }
            Gaifgoihffa::CmdFightTreasureDungeonMonsterScRsp => {
                "CmdFightTreasureDungeonMonsterScRsp"
            }
            Gaifgoihffa::CmdInteractTreasureDungeonGridScRsp => {
                "CmdInteractTreasureDungeonGridScRsp"
            }
            Gaifgoihffa::CmdTreasureDungeonFinishScNotify => {
                "CmdTreasureDungeonFinishScNotify"
            }
            Gaifgoihffa::CmdGetTreasureDungeonActivityDataCsReq => {
                "CmdGetTreasureDungeonActivityDataCsReq"
            }
            Gaifgoihffa::CmdEnterTreasureDungeonCsReq => "CmdEnterTreasureDungeonCsReq",
            Gaifgoihffa::CmdGetTreasureDungeonActivityDataScRsp => {
                "CmdGetTreasureDungeonActivityDataScRsp"
            }
            Gaifgoihffa::CmdInteractTreasureDungeonGridCsReq => {
                "CmdInteractTreasureDungeonGridCsReq"
            }
            Gaifgoihffa::CmdEnterTreasureDungeonScRsp => "CmdEnterTreasureDungeonScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdTreasureDungeonTypeNone" => Some(Self::CmdTreasureDungeonTypeNone),
            "CmdUseTreasureDungeonItemScRsp" => {
                Some(Self::CmdUseTreasureDungeonItemScRsp)
            }
            "CmdUseTreasureDungeonItemCsReq" => {
                Some(Self::CmdUseTreasureDungeonItemCsReq)
            }
            "CmdOpenTreasureDungeonGridScRsp" => {
                Some(Self::CmdOpenTreasureDungeonGridScRsp)
            }
            "CmdQuitTreasureDungeonCsReq" => Some(Self::CmdQuitTreasureDungeonCsReq),
            "CmdQuitTreasureDungeonScRsp" => Some(Self::CmdQuitTreasureDungeonScRsp),
            "CmdOpenTreasureDungeonGridCsReq" => {
                Some(Self::CmdOpenTreasureDungeonGridCsReq)
            }
            "CmdFightTreasureDungeonMonsterCsReq" => {
                Some(Self::CmdFightTreasureDungeonMonsterCsReq)
            }
            "CmdTreasureDungeonDataScNotify" => {
                Some(Self::CmdTreasureDungeonDataScNotify)
            }
            "CmdFightTreasureDungeonMonsterScRsp" => {
                Some(Self::CmdFightTreasureDungeonMonsterScRsp)
            }
            "CmdInteractTreasureDungeonGridScRsp" => {
                Some(Self::CmdInteractTreasureDungeonGridScRsp)
            }
            "CmdTreasureDungeonFinishScNotify" => {
                Some(Self::CmdTreasureDungeonFinishScNotify)
            }
            "CmdGetTreasureDungeonActivityDataCsReq" => {
                Some(Self::CmdGetTreasureDungeonActivityDataCsReq)
            }
            "CmdEnterTreasureDungeonCsReq" => Some(Self::CmdEnterTreasureDungeonCsReq),
            "CmdGetTreasureDungeonActivityDataScRsp" => {
                Some(Self::CmdGetTreasureDungeonActivityDataScRsp)
            }
            "CmdInteractTreasureDungeonGridCsReq" => {
                Some(Self::CmdInteractTreasureDungeonGridCsReq)
            }
            "CmdEnterTreasureDungeonScRsp" => Some(Self::CmdEnterTreasureDungeonScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Phpcidgokmb {
    TreasureDungeonRecordNone = 0,
    TreasureDungeonRecordAddHp = 1,
    TreasureDungeonRecordSubHp = 2,
    TreasureDungeonRecordSubHpNoExplore = 3,
    TreasureDungeonRecordAddAttack = 5,
    TreasureDungeonRecordAddDefence = 6,
    TreasureDungeonRecordAddExplore = 9,
    TreasureDungeonRecordSubExplore = 10,
    TreasureDungeonRecordAddExploreOverflow = 11,
    TreasureDungeonRecordSummon = 15,
    TreasureDungeonRecordKill = 16,
    TreasureDungeonRecordAddTrialAvatar = 20,
    TreasureDungeonRecordAddBuff = 24,
    TreasureDungeonRecordUnlockDoor = 25,
    TreasureDungeonRecordEnemyEnhance = 27,
    TreasureDungeonRecordEnemyWeaken = 28,
    TreasureDungeonRecordEnemyAuraRemove = 29,
    TreasureDungeonRecordSpecialMonsterRun = 30,
    TreasureDungeonRecordSpecialMonsterKill = 31,
    TreasureDungeonRecordBattleBuffTriggerSuccess = 33,
    TreasureDungeonRecordBattleBuffTriggerFail = 34,
    TreasureDungeonRecordBattleBuffAddExplore = 35,
    TreasureDungeonRecordBattleBuffOpenGrid = 36,
    TreasureDungeonRecordBattleBuffAddItem = 37,
    TreasureDungeonRecordAvatarDead = 40,
    TreasureDungeonRecordTrialAvatarDead = 41,
    TreasureDungeonRecordAllAvatarDead = 42,
    TreasureDungeonRecordOpenItemChest = 43,
}
impl Phpcidgokmb {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Phpcidgokmb::TreasureDungeonRecordNone => "TREASURE_DUNGEON_RECORD_NONE",
            Phpcidgokmb::TreasureDungeonRecordAddHp => "TREASURE_DUNGEON_RECORD_ADD_HP",
            Phpcidgokmb::TreasureDungeonRecordSubHp => "TREASURE_DUNGEON_RECORD_SUB_HP",
            Phpcidgokmb::TreasureDungeonRecordSubHpNoExplore => {
                "TREASURE_DUNGEON_RECORD_SUB_HP_NO_EXPLORE"
            }
            Phpcidgokmb::TreasureDungeonRecordAddAttack => {
                "TREASURE_DUNGEON_RECORD_ADD_ATTACK"
            }
            Phpcidgokmb::TreasureDungeonRecordAddDefence => {
                "TREASURE_DUNGEON_RECORD_ADD_DEFENCE"
            }
            Phpcidgokmb::TreasureDungeonRecordAddExplore => {
                "TREASURE_DUNGEON_RECORD_ADD_EXPLORE"
            }
            Phpcidgokmb::TreasureDungeonRecordSubExplore => {
                "TREASURE_DUNGEON_RECORD_SUB_EXPLORE"
            }
            Phpcidgokmb::TreasureDungeonRecordAddExploreOverflow => {
                "TREASURE_DUNGEON_RECORD_ADD_EXPLORE_OVERFLOW"
            }
            Phpcidgokmb::TreasureDungeonRecordSummon => "TREASURE_DUNGEON_RECORD_SUMMON",
            Phpcidgokmb::TreasureDungeonRecordKill => "TREASURE_DUNGEON_RECORD_KILL",
            Phpcidgokmb::TreasureDungeonRecordAddTrialAvatar => {
                "TREASURE_DUNGEON_RECORD_ADD_TRIAL_AVATAR"
            }
            Phpcidgokmb::TreasureDungeonRecordAddBuff => {
                "TREASURE_DUNGEON_RECORD_ADD_BUFF"
            }
            Phpcidgokmb::TreasureDungeonRecordUnlockDoor => {
                "TREASURE_DUNGEON_RECORD_UNLOCK_DOOR"
            }
            Phpcidgokmb::TreasureDungeonRecordEnemyEnhance => {
                "TREASURE_DUNGEON_RECORD_ENEMY_ENHANCE"
            }
            Phpcidgokmb::TreasureDungeonRecordEnemyWeaken => {
                "TREASURE_DUNGEON_RECORD_ENEMY_WEAKEN"
            }
            Phpcidgokmb::TreasureDungeonRecordEnemyAuraRemove => {
                "TREASURE_DUNGEON_RECORD_ENEMY_AURA_REMOVE"
            }
            Phpcidgokmb::TreasureDungeonRecordSpecialMonsterRun => {
                "TREASURE_DUNGEON_RECORD_SPECIAL_MONSTER_RUN"
            }
            Phpcidgokmb::TreasureDungeonRecordSpecialMonsterKill => {
                "TREASURE_DUNGEON_RECORD_SPECIAL_MONSTER_KILL"
            }
            Phpcidgokmb::TreasureDungeonRecordBattleBuffTriggerSuccess => {
                "TREASURE_DUNGEON_RECORD_BATTLE_BUFF_TRIGGER_SUCCESS"
            }
            Phpcidgokmb::TreasureDungeonRecordBattleBuffTriggerFail => {
                "TREASURE_DUNGEON_RECORD_BATTLE_BUFF_TRIGGER_FAIL"
            }
            Phpcidgokmb::TreasureDungeonRecordBattleBuffAddExplore => {
                "TREASURE_DUNGEON_RECORD_BATTLE_BUFF_ADD_EXPLORE"
            }
            Phpcidgokmb::TreasureDungeonRecordBattleBuffOpenGrid => {
                "TREASURE_DUNGEON_RECORD_BATTLE_BUFF_OPEN_GRID"
            }
            Phpcidgokmb::TreasureDungeonRecordBattleBuffAddItem => {
                "TREASURE_DUNGEON_RECORD_BATTLE_BUFF_ADD_ITEM"
            }
            Phpcidgokmb::TreasureDungeonRecordAvatarDead => {
                "TREASURE_DUNGEON_RECORD_AVATAR_DEAD"
            }
            Phpcidgokmb::TreasureDungeonRecordTrialAvatarDead => {
                "TREASURE_DUNGEON_RECORD_TRIAL_AVATAR_DEAD"
            }
            Phpcidgokmb::TreasureDungeonRecordAllAvatarDead => {
                "TREASURE_DUNGEON_RECORD_ALL_AVATAR_DEAD"
            }
            Phpcidgokmb::TreasureDungeonRecordOpenItemChest => {
                "TREASURE_DUNGEON_RECORD_OPEN_ITEM_CHEST"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "TREASURE_DUNGEON_RECORD_NONE" => Some(Self::TreasureDungeonRecordNone),
            "TREASURE_DUNGEON_RECORD_ADD_HP" => Some(Self::TreasureDungeonRecordAddHp),
            "TREASURE_DUNGEON_RECORD_SUB_HP" => Some(Self::TreasureDungeonRecordSubHp),
            "TREASURE_DUNGEON_RECORD_SUB_HP_NO_EXPLORE" => {
                Some(Self::TreasureDungeonRecordSubHpNoExplore)
            }
            "TREASURE_DUNGEON_RECORD_ADD_ATTACK" => {
                Some(Self::TreasureDungeonRecordAddAttack)
            }
            "TREASURE_DUNGEON_RECORD_ADD_DEFENCE" => {
                Some(Self::TreasureDungeonRecordAddDefence)
            }
            "TREASURE_DUNGEON_RECORD_ADD_EXPLORE" => {
                Some(Self::TreasureDungeonRecordAddExplore)
            }
            "TREASURE_DUNGEON_RECORD_SUB_EXPLORE" => {
                Some(Self::TreasureDungeonRecordSubExplore)
            }
            "TREASURE_DUNGEON_RECORD_ADD_EXPLORE_OVERFLOW" => {
                Some(Self::TreasureDungeonRecordAddExploreOverflow)
            }
            "TREASURE_DUNGEON_RECORD_SUMMON" => Some(Self::TreasureDungeonRecordSummon),
            "TREASURE_DUNGEON_RECORD_KILL" => Some(Self::TreasureDungeonRecordKill),
            "TREASURE_DUNGEON_RECORD_ADD_TRIAL_AVATAR" => {
                Some(Self::TreasureDungeonRecordAddTrialAvatar)
            }
            "TREASURE_DUNGEON_RECORD_ADD_BUFF" => {
                Some(Self::TreasureDungeonRecordAddBuff)
            }
            "TREASURE_DUNGEON_RECORD_UNLOCK_DOOR" => {
                Some(Self::TreasureDungeonRecordUnlockDoor)
            }
            "TREASURE_DUNGEON_RECORD_ENEMY_ENHANCE" => {
                Some(Self::TreasureDungeonRecordEnemyEnhance)
            }
            "TREASURE_DUNGEON_RECORD_ENEMY_WEAKEN" => {
                Some(Self::TreasureDungeonRecordEnemyWeaken)
            }
            "TREASURE_DUNGEON_RECORD_ENEMY_AURA_REMOVE" => {
                Some(Self::TreasureDungeonRecordEnemyAuraRemove)
            }
            "TREASURE_DUNGEON_RECORD_SPECIAL_MONSTER_RUN" => {
                Some(Self::TreasureDungeonRecordSpecialMonsterRun)
            }
            "TREASURE_DUNGEON_RECORD_SPECIAL_MONSTER_KILL" => {
                Some(Self::TreasureDungeonRecordSpecialMonsterKill)
            }
            "TREASURE_DUNGEON_RECORD_BATTLE_BUFF_TRIGGER_SUCCESS" => {
                Some(Self::TreasureDungeonRecordBattleBuffTriggerSuccess)
            }
            "TREASURE_DUNGEON_RECORD_BATTLE_BUFF_TRIGGER_FAIL" => {
                Some(Self::TreasureDungeonRecordBattleBuffTriggerFail)
            }
            "TREASURE_DUNGEON_RECORD_BATTLE_BUFF_ADD_EXPLORE" => {
                Some(Self::TreasureDungeonRecordBattleBuffAddExplore)
            }
            "TREASURE_DUNGEON_RECORD_BATTLE_BUFF_OPEN_GRID" => {
                Some(Self::TreasureDungeonRecordBattleBuffOpenGrid)
            }
            "TREASURE_DUNGEON_RECORD_BATTLE_BUFF_ADD_ITEM" => {
                Some(Self::TreasureDungeonRecordBattleBuffAddItem)
            }
            "TREASURE_DUNGEON_RECORD_AVATAR_DEAD" => {
                Some(Self::TreasureDungeonRecordAvatarDead)
            }
            "TREASURE_DUNGEON_RECORD_TRIAL_AVATAR_DEAD" => {
                Some(Self::TreasureDungeonRecordTrialAvatarDead)
            }
            "TREASURE_DUNGEON_RECORD_ALL_AVATAR_DEAD" => {
                Some(Self::TreasureDungeonRecordAllAvatarDead)
            }
            "TREASURE_DUNGEON_RECORD_OPEN_ITEM_CHEST" => {
                Some(Self::TreasureDungeonRecordOpenItemChest)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Gepaombhmnm {
    CmdTutorialTypeNone = 0,
    CmdGetTutorialGuideCsReq = 1662,
    CmdUnlockTutorialScRsp = 1609,
    CmdUnlockTutorialCsReq = 1602,
    CmdUnlockTutorialGuideScRsp = 1643,
    CmdUnlockTutorialGuideCsReq = 1619,
    CmdGetTutorialCsReq = 1634,
    CmdGetTutorialGuideScRsp = 1688,
    CmdFinishTutorialGuideCsReq = 1645,
    CmdFinishTutorialCsReq = 1686,
    CmdGetTutorialScRsp = 1648,
    CmdFinishTutorialScRsp = 1629,
    CmdFinishTutorialGuideScRsp = 1668,
}
impl Gepaombhmnm {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Gepaombhmnm::CmdTutorialTypeNone => "CmdTutorialTypeNone",
            Gepaombhmnm::CmdGetTutorialGuideCsReq => "CmdGetTutorialGuideCsReq",
            Gepaombhmnm::CmdUnlockTutorialScRsp => "CmdUnlockTutorialScRsp",
            Gepaombhmnm::CmdUnlockTutorialCsReq => "CmdUnlockTutorialCsReq",
            Gepaombhmnm::CmdUnlockTutorialGuideScRsp => "CmdUnlockTutorialGuideScRsp",
            Gepaombhmnm::CmdUnlockTutorialGuideCsReq => "CmdUnlockTutorialGuideCsReq",
            Gepaombhmnm::CmdGetTutorialCsReq => "CmdGetTutorialCsReq",
            Gepaombhmnm::CmdGetTutorialGuideScRsp => "CmdGetTutorialGuideScRsp",
            Gepaombhmnm::CmdFinishTutorialGuideCsReq => "CmdFinishTutorialGuideCsReq",
            Gepaombhmnm::CmdFinishTutorialCsReq => "CmdFinishTutorialCsReq",
            Gepaombhmnm::CmdGetTutorialScRsp => "CmdGetTutorialScRsp",
            Gepaombhmnm::CmdFinishTutorialScRsp => "CmdFinishTutorialScRsp",
            Gepaombhmnm::CmdFinishTutorialGuideScRsp => "CmdFinishTutorialGuideScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdTutorialTypeNone" => Some(Self::CmdTutorialTypeNone),
            "CmdGetTutorialGuideCsReq" => Some(Self::CmdGetTutorialGuideCsReq),
            "CmdUnlockTutorialScRsp" => Some(Self::CmdUnlockTutorialScRsp),
            "CmdUnlockTutorialCsReq" => Some(Self::CmdUnlockTutorialCsReq),
            "CmdUnlockTutorialGuideScRsp" => Some(Self::CmdUnlockTutorialGuideScRsp),
            "CmdUnlockTutorialGuideCsReq" => Some(Self::CmdUnlockTutorialGuideCsReq),
            "CmdGetTutorialCsReq" => Some(Self::CmdGetTutorialCsReq),
            "CmdGetTutorialGuideScRsp" => Some(Self::CmdGetTutorialGuideScRsp),
            "CmdFinishTutorialGuideCsReq" => Some(Self::CmdFinishTutorialGuideCsReq),
            "CmdFinishTutorialCsReq" => Some(Self::CmdFinishTutorialCsReq),
            "CmdGetTutorialScRsp" => Some(Self::CmdGetTutorialScRsp),
            "CmdFinishTutorialScRsp" => Some(Self::CmdFinishTutorialScRsp),
            "CmdFinishTutorialGuideScRsp" => Some(Self::CmdFinishTutorialGuideScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum TutorialStatus {
    TutorialNone = 0,
    TutorialUnlock = 1,
    TutorialFinish = 2,
}
impl TutorialStatus {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            TutorialStatus::TutorialNone => "TUTORIAL_NONE",
            TutorialStatus::TutorialUnlock => "TUTORIAL_UNLOCK",
            TutorialStatus::TutorialFinish => "TUTORIAL_FINISH",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "TUTORIAL_NONE" => Some(Self::TutorialNone),
            "TUTORIAL_UNLOCK" => Some(Self::TutorialUnlock),
            "TUTORIAL_FINISH" => Some(Self::TutorialFinish),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Emghhjhkogo {
    CmdWaypointTypeNone = 0,
    CmdGetChapterScRsp = 409,
    CmdTakeChapterRewardScRsp = 486,
    CmdGetWaypointScRsp = 448,
    CmdTakeChapterRewardCsReq = 443,
    CmdGetChapterCsReq = 402,
    CmdSetCurWaypointCsReq = 462,
    CmdWaypointShowNewCsNotify = 419,
    CmdGetWaypointCsReq = 434,
    CmdSetCurWaypointScRsp = 488,
}
impl Emghhjhkogo {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Emghhjhkogo::CmdWaypointTypeNone => "CmdWaypointTypeNone",
            Emghhjhkogo::CmdGetChapterScRsp => "CmdGetChapterScRsp",
            Emghhjhkogo::CmdTakeChapterRewardScRsp => "CmdTakeChapterRewardScRsp",
            Emghhjhkogo::CmdGetWaypointScRsp => "CmdGetWaypointScRsp",
            Emghhjhkogo::CmdTakeChapterRewardCsReq => "CmdTakeChapterRewardCsReq",
            Emghhjhkogo::CmdGetChapterCsReq => "CmdGetChapterCsReq",
            Emghhjhkogo::CmdSetCurWaypointCsReq => "CmdSetCurWaypointCsReq",
            Emghhjhkogo::CmdWaypointShowNewCsNotify => "CmdWaypointShowNewCsNotify",
            Emghhjhkogo::CmdGetWaypointCsReq => "CmdGetWaypointCsReq",
            Emghhjhkogo::CmdSetCurWaypointScRsp => "CmdSetCurWaypointScRsp",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdWaypointTypeNone" => Some(Self::CmdWaypointTypeNone),
            "CmdGetChapterScRsp" => Some(Self::CmdGetChapterScRsp),
            "CmdTakeChapterRewardScRsp" => Some(Self::CmdTakeChapterRewardScRsp),
            "CmdGetWaypointScRsp" => Some(Self::CmdGetWaypointScRsp),
            "CmdTakeChapterRewardCsReq" => Some(Self::CmdTakeChapterRewardCsReq),
            "CmdGetChapterCsReq" => Some(Self::CmdGetChapterCsReq),
            "CmdSetCurWaypointCsReq" => Some(Self::CmdSetCurWaypointCsReq),
            "CmdWaypointShowNewCsNotify" => Some(Self::CmdWaypointShowNewCsNotify),
            "CmdGetWaypointCsReq" => Some(Self::CmdGetWaypointCsReq),
            "CmdSetCurWaypointScRsp" => Some(Self::CmdSetCurWaypointScRsp),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Oihdaljgdan {
    WaypointTypeNone = 0,
    WaypointTypeStage = 1,
    WaypointTypePlot = 2,
}
impl Oihdaljgdan {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Oihdaljgdan::WaypointTypeNone => "WAYPOINT_TYPE_NONE",
            Oihdaljgdan::WaypointTypeStage => "WAYPOINT_TYPE_STAGE",
            Oihdaljgdan::WaypointTypePlot => "WAYPOINT_TYPE_PLOT",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "WAYPOINT_TYPE_NONE" => Some(Self::WaypointTypeNone),
            "WAYPOINT_TYPE_STAGE" => Some(Self::WaypointTypeStage),
            "WAYPOINT_TYPE_PLOT" => Some(Self::WaypointTypePlot),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Hogiljncndo {
    WaypointUnlockNone = 0,
    WaypointUnlockPre = 1,
    WaypointUnlockLevel = 2,
}
impl Hogiljncndo {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Hogiljncndo::WaypointUnlockNone => "WAYPOINT_UNLOCK_NONE",
            Hogiljncndo::WaypointUnlockPre => "WAYPOINT_UNLOCK_PRE",
            Hogiljncndo::WaypointUnlockLevel => "WAYPOINT_UNLOCK_LEVEL",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "WAYPOINT_UNLOCK_NONE" => Some(Self::WaypointUnlockNone),
            "WAYPOINT_UNLOCK_PRE" => Some(Self::WaypointUnlockPre),
            "WAYPOINT_UNLOCK_LEVEL" => Some(Self::WaypointUnlockLevel),
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Baelkbdlpnk {
    CmdWolfBroTypeNone = 0,
    CmdGetWolfBroGameDataScRsp = 6529,
    CmdArchiveWolfBroGameCsReq = 6562,
    CmdWolfBroGameUseBulletScRsp = 6596,
    CmdWolfBroGameExplodeMonsterCsReq = 6542,
    CmdArchiveWolfBroGameScRsp = 6588,
    CmdStartWolfBroGameScRsp = 6548,
    CmdWolfBroGameActivateBulletScRsp = 6595,
    CmdWolfBroGameExplodeMonsterScRsp = 6537,
    CmdWolfBroGameDataChangeScNotify = 6545,
    CmdWolfBroGamePickupBulletCsReq = 6506,
    CmdGetWolfBroGameDataCsReq = 6586,
    CmdRestoreWolfBroGameArchiveCsReq = 6502,
    CmdWolfBroGameUseBulletCsReq = 6568,
    CmdWolfBroGameActivateBulletCsReq = 6559,
    CmdWolfBroGamePickupBulletScRsp = 6533,
    CmdStartWolfBroGameCsReq = 6534,
    CmdQuitWolfBroGameCsReq = 6519,
    CmdQuitWolfBroGameScRsp = 6543,
    CmdRestoreWolfBroGameArchiveScRsp = 6509,
}
impl Baelkbdlpnk {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Baelkbdlpnk::CmdWolfBroTypeNone => "CmdWolfBroTypeNone",
            Baelkbdlpnk::CmdGetWolfBroGameDataScRsp => "CmdGetWolfBroGameDataScRsp",
            Baelkbdlpnk::CmdArchiveWolfBroGameCsReq => "CmdArchiveWolfBroGameCsReq",
            Baelkbdlpnk::CmdWolfBroGameUseBulletScRsp => "CmdWolfBroGameUseBulletScRsp",
            Baelkbdlpnk::CmdWolfBroGameExplodeMonsterCsReq => {
                "CmdWolfBroGameExplodeMonsterCsReq"
            }
            Baelkbdlpnk::CmdArchiveWolfBroGameScRsp => "CmdArchiveWolfBroGameScRsp",
            Baelkbdlpnk::CmdStartWolfBroGameScRsp => "CmdStartWolfBroGameScRsp",
            Baelkbdlpnk::CmdWolfBroGameActivateBulletScRsp => {
                "CmdWolfBroGameActivateBulletScRsp"
            }
            Baelkbdlpnk::CmdWolfBroGameExplodeMonsterScRsp => {
                "CmdWolfBroGameExplodeMonsterScRsp"
            }
            Baelkbdlpnk::CmdWolfBroGameDataChangeScNotify => {
                "CmdWolfBroGameDataChangeScNotify"
            }
            Baelkbdlpnk::CmdWolfBroGamePickupBulletCsReq => {
                "CmdWolfBroGamePickupBulletCsReq"
            }
            Baelkbdlpnk::CmdGetWolfBroGameDataCsReq => "CmdGetWolfBroGameDataCsReq",
            Baelkbdlpnk::CmdRestoreWolfBroGameArchiveCsReq => {
                "CmdRestoreWolfBroGameArchiveCsReq"
            }
            Baelkbdlpnk::CmdWolfBroGameUseBulletCsReq => "CmdWolfBroGameUseBulletCsReq",
            Baelkbdlpnk::CmdWolfBroGameActivateBulletCsReq => {
                "CmdWolfBroGameActivateBulletCsReq"
            }
            Baelkbdlpnk::CmdWolfBroGamePickupBulletScRsp => {
                "CmdWolfBroGamePickupBulletScRsp"
            }
            Baelkbdlpnk::CmdStartWolfBroGameCsReq => "CmdStartWolfBroGameCsReq",
            Baelkbdlpnk::CmdQuitWolfBroGameCsReq => "CmdQuitWolfBroGameCsReq",
            Baelkbdlpnk::CmdQuitWolfBroGameScRsp => "CmdQuitWolfBroGameScRsp",
            Baelkbdlpnk::CmdRestoreWolfBroGameArchiveScRsp => {
                "CmdRestoreWolfBroGameArchiveScRsp"
            }
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "CmdWolfBroTypeNone" => Some(Self::CmdWolfBroTypeNone),
            "CmdGetWolfBroGameDataScRsp" => Some(Self::CmdGetWolfBroGameDataScRsp),
            "CmdArchiveWolfBroGameCsReq" => Some(Self::CmdArchiveWolfBroGameCsReq),
            "CmdWolfBroGameUseBulletScRsp" => Some(Self::CmdWolfBroGameUseBulletScRsp),
            "CmdWolfBroGameExplodeMonsterCsReq" => {
                Some(Self::CmdWolfBroGameExplodeMonsterCsReq)
            }
            "CmdArchiveWolfBroGameScRsp" => Some(Self::CmdArchiveWolfBroGameScRsp),
            "CmdStartWolfBroGameScRsp" => Some(Self::CmdStartWolfBroGameScRsp),
            "CmdWolfBroGameActivateBulletScRsp" => {
                Some(Self::CmdWolfBroGameActivateBulletScRsp)
            }
            "CmdWolfBroGameExplodeMonsterScRsp" => {
                Some(Self::CmdWolfBroGameExplodeMonsterScRsp)
            }
            "CmdWolfBroGameDataChangeScNotify" => {
                Some(Self::CmdWolfBroGameDataChangeScNotify)
            }
            "CmdWolfBroGamePickupBulletCsReq" => {
                Some(Self::CmdWolfBroGamePickupBulletCsReq)
            }
            "CmdGetWolfBroGameDataCsReq" => Some(Self::CmdGetWolfBroGameDataCsReq),
            "CmdRestoreWolfBroGameArchiveCsReq" => {
                Some(Self::CmdRestoreWolfBroGameArchiveCsReq)
            }
            "CmdWolfBroGameUseBulletCsReq" => Some(Self::CmdWolfBroGameUseBulletCsReq),
            "CmdWolfBroGameActivateBulletCsReq" => {
                Some(Self::CmdWolfBroGameActivateBulletCsReq)
            }
            "CmdWolfBroGamePickupBulletScRsp" => {
                Some(Self::CmdWolfBroGamePickupBulletScRsp)
            }
            "CmdStartWolfBroGameCsReq" => Some(Self::CmdStartWolfBroGameCsReq),
            "CmdQuitWolfBroGameCsReq" => Some(Self::CmdQuitWolfBroGameCsReq),
            "CmdQuitWolfBroGameScRsp" => Some(Self::CmdQuitWolfBroGameScRsp),
            "CmdRestoreWolfBroGameArchiveScRsp" => {
                Some(Self::CmdRestoreWolfBroGameArchiveScRsp)
            }
            _ => None,
        }
    }
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Djondipanml {
    DispatchTypeNone = 0,
    DispatchTypeByAddr = 1,
    DispatchTypeByMod = 2,
    DispatchTypeByRand = 3,
    DispatchTypeByChash = 4,
    DispatchTypeByStickySession = 5,
    DispatchTypeByObject = 6,
}
impl Djondipanml {
    /// String value of the enum field names used in the ProtoBuf definition.
    ///
    /// The values are not transformed in any way and thus are considered stable
    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
    pub fn as_str_name(&self) -> &'static str {
        match self {
            Djondipanml::DispatchTypeNone => "DISPATCH_TYPE_NONE",
            Djondipanml::DispatchTypeByAddr => "DISPATCH_TYPE_BY_ADDR",
            Djondipanml::DispatchTypeByMod => "DISPATCH_TYPE_BY_MOD",
            Djondipanml::DispatchTypeByRand => "DISPATCH_TYPE_BY_RAND",
            Djondipanml::DispatchTypeByChash => "DISPATCH_TYPE_BY_CHASH",
            Djondipanml::DispatchTypeByStickySession => "DISPATCH_TYPE_BY_STICKY_SESSION",
            Djondipanml::DispatchTypeByObject => "DISPATCH_TYPE_BY_OBJECT",
        }
    }
    /// Creates an enum from field names used in the ProtoBuf definition.
    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
        match value {
            "DISPATCH_TYPE_NONE" => Some(Self::DispatchTypeNone),
            "DISPATCH_TYPE_BY_ADDR" => Some(Self::DispatchTypeByAddr),
            "DISPATCH_TYPE_BY_MOD" => Some(Self::DispatchTypeByMod),
            "DISPATCH_TYPE_BY_RAND" => Some(Self::DispatchTypeByRand),
            "DISPATCH_TYPE_BY_CHASH" => Some(Self::DispatchTypeByChash),
            "DISPATCH_TYPE_BY_STICKY_SESSION" => Some(Self::DispatchTypeByStickySession),
            "DISPATCH_TYPE_BY_OBJECT" => Some(Self::DispatchTypeByObject),
            _ => None,
        }
    }
}
