local InitMessage = BaseClass("InitMessage", SFSBaseMessage)
local InitMsgCount = 0
local rapidjson = require("rapidjson")
local Setting = CS.GameEntry.Setting
local Sdk = CS.GameEntry.Sdk
local base = SFSBaseMessage
local OnCreate = function(self)
  base.OnCreate(self)
end
local _loginGpPerLaunch = false
local HandleMessage = function(self, t)
  print("[PushInit] lua PushInit")
  base.HandleMessage(self, t)
  LuaEntry:onMessage(t)
  CommonUtil.ProtectCall(function()
    DataCenter.SeasonDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWGuideFlowManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.CommonRedPointManager:InitData()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.CreditManager:OnUpdateCreditValue(t, true)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.CityCarbarnManager:InitData()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.CityArmyYardManager:InitData()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.BirthPointTemplateManager:InitData()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.FirstPayManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.BuildManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.WorkerDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ProductLineManager:HandleInit(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.BoardManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.AccountManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.DailyTaskManager:TryReqUpdateData()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ChapterTaskManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.TaskManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ActivityListDataManager:InitActivityListData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ItemData:ParseItemData(t.items)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ItemManager:ItemEffectStateList(t)
  end)
  CommonUtil.ProtectCall(function()
    GiftPackageData.init(t)
  end)
  CommonUtil.ProtectCall(function()
    MonthCardManager.init(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.BuildingDisplayCardManager:InitData()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.MonthCardNewManager:InitGolloesMonthCard(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.CumulativeRechargeManager:InitDat(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.GolloesCampManager:UpdateGolloesInfo(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.PayManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.TradeCenterDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ScienceDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ArmyFormationDataManager:InitArmyFormationListData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.QueueDataManager:InitQueueDataList(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.BuildQueueManager:InitQueueList(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ResourceItemDataManager:InitRefreshItemList(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.StorageShopManager:InitShopData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LandLockManager:InitHandle(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.MonsterLockDataManager:InitDatas(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.StageManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ParkourManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LotteryDataManager:InitCurLotteryIdList(t)
  end)
  CommonUtil.ProtectCall(function()
    if t.alliance ~= nil then
      DataCenter.AllianceBaseDataManager:UpdateAllianceBaseData(t, true)
    end
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.AllianceBaseDataManager:UpdateMoveInviteInfo(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.AllianceRallyPointDataManager:InitData()
  end)
  CommonUtil.ProtectCall(function()
    if t.allianceNewMail ~= nil then
      DataCenter.AllianceGiftDataManager:UpdateGiftNum(t.allianceNewMail)
      EventManager:GetInstance():Broadcast(EventId.UpdateAllianceGiftNum)
    end
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.AllianceCityLogManager:InitData()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ArmyManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.HospitalManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.PushSettingsManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.EquipDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.HeroDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.HeroDataManager:InitGlobalData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWMyStationDataManager:InitArmyFormationListData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.NpcQAManager:InitQAData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ResidentOrderDataManager:InitResidentOrderDataList(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.EarthOrderDataManager:InitEarthOrderDataList(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.GroceryStoreOrderDataManager:InitGroceryStoreOrderDataList(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.FactoryDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.DefenceWallDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.WarningBallManager:InitData()
  end)
  CommonUtil.ProtectCall(function()
    BuildFireEffectManager:GetInstance():Startup()
  end)
  CommonUtil.ProtectCall(function()
    BuildTopBubbleManager:GetInstance():Startup()
  end)
  CommonUtil.ProtectCall(function()
    WorldShortTimeEffectBubbleManager:GetInstance():Startup()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.MonsterManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.PlayerLevelManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.PlayerCareerManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ActBossDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.VIPManager:InitData(t)
    DataCenter.VipExtendManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.CollectRewardDataManager:UpdateCollectRewardList(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.HeroEntrustManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.CommonEquipDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LW3V3ArenaManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.MasteryManager:HandleInit(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.FunctionOnManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ActDetectTreasureDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    ChatManager2:GetInstance().Restrict:onServerInfo(t)
    ChatManager2:GetInstance().Net:SetToken(t.chatToken)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.DesertDataManager:InitDesertDataRequest(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.CityPointDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LeagueMatchManager:OnRecvInitMsg(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.PlayerCareerManager:UpdateIrrigateInfo(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.PlayerCareerManager:UpdateTraderExtraReward(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.GuidePickGarbageBubbleManager:InitData()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.AllianceRedPacketManager:InitRedPacket(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.AllianceSeasonTaskManager:RequestTaskInfo()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.TalentDataManager:InitTalent(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.EnergyOrderManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.WoundedCompensateData:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.BuildUpgradeStockManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.CollectResourceManager:InitCollectPoint()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.CityVisitorManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWOpeningStageManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWTowerUpStageManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWDominatorUpStageManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWGuideManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.MonopolyManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWCountStageManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    LuaEntry.Player:UpdateClaimFreeStamina(t)
  end)
  CommonUtil.ProtectCall(function()
    CS.GameEntry.Sdk:requestFCMToken()
    CS.GameEntry.Sdk:CrashlyticsSetUserId(LuaEntry.Player.uid)
  end)
  CommonUtil.ProtectCall(function()
    if not DataCenter.GuideManager:IsStartId() then
      UIManager:GetInstance():OpenWindow(UIWindowNames.UIMain, {})
    end
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ArmyFormationDataManager:FetchFormationSoldier()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.DecorationDataManager:InitUserSkins(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ItemSkinDataManager:InitUserSkins(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.RecruitCardItemManager:InitData()
  end)
  CommonUtil.ProtectCall(function()
    BattleFieldUtil.CheckStatus()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWSaveGirlManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWMyStationDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWTranslationRatingManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.TacticalWeaponManager:Init(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.DominatorManager:InitInfo(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.DominatorGuideManager:UpdateGuideProgress(t, true)
    DataCenter.DominatorCockatriceUnlockManager:UpdateGuideProgress(t, true)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.GoldBrickDataManager:ParseData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWTrailTowerManager:ParseData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ComicManager:Init(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWMyStationDataManager:InitArmyFormationListData(t)
  end)
  CommonUtil.ProtectCall(function()
    PlayPlotManager:GetInstance():Startup()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWUserGuideManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWFiveStarManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.RedPacketManager:SetRedPacketGetNumData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ActGiftGivingDataManager:InitData(t)
    DataCenter.ActivityReceiveDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ActDetectTreasureDataManager:OnGetDigTimesMsg(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.SplinterExchangeManager:SetShowExchangeRedPoint(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.CitySkinSkillManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWAccountBindTipManager:InitData()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.OfficialApplyManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.RebirthHospitalManager:HandleServerRebirthData(t, true)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWBerserkBossManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.BuildHelpStopFireManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ChatEmojiTemplateManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.BoxItemDrawManager:InitUserData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWStageFeatureChapterManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWEasyStageFeatureChapterManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ActGhostreconManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.EquipRecommendManager:InitSwitch(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LotteryDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.SeasonNuclearPowerPlantDataManager:InitMsg(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWSticker3DManager:Startup()
  end)
  CommonUtil.ProtectCall(function()
    if t.mummyWaitRecInfo then
      DataCenter.SeasonMummyDataManager:UpdateRecArmy(t.mummyWaitRecInfo)
    end
  end)
  CommonUtil.ProtectCall(function()
    if t.alliance_photo_module_open then
      DataCenter.SeasonPhotoManager:SetModuleValue(t.alliance_photo_module_open)
    end
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWAllyStationDataManager:InitMsg(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWBeginnerDirectorManager:InitMsg(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.MultiRewardDropManager:InitMsg(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ActivityVisitorManager:InitMsg(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.SandWormFishingDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.GiftSystemManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.CommonShopManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ExplorerTreasureManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.TacticalCardDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.AllianceStarManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWRefundPunishManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.RadarCenterDataManager:UpdateZombieBusTrainArriveCity(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.ActConcertDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.IOSVersionUpdateTipManager:InitData()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.T11DataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.T11IdleGameDataManager:OnInitMessage(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.GuideRecordDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.BirthdayDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.GiftDetailShowDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    ChatInterface.getGroupChatMgr():InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.LWGameCenterUploadAchievementManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    if SeasonUtil.InSeasonBigMapMode() then
      DataCenter.MakingCoffeeManager:OnInitMessage(t)
    end
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.BountyHunterActDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.FlowerTrainDataManager:InitData(t)
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.BackGestureManager:OnInitMessage()
  end)
  CommonUtil.ProtectCall(function()
    DataCenter.DecorationRecommendManager:InitSwitch(t)
  end)
  CommonUtil.ProtectCall(function()
    if t then
      DataCenter.AllianceFeatureManager:RefreshAllianceJumpNew(t.allianceJumpNew)
    end
  end)
  if 0 < InitMsgCount then
    self:OnLiteReconnect()
  else
    Setting:SetString(SettingKeys.Last_LOGIN_TIME, tostring(UITimeManager:GetInstance():GetServerSeconds()))
  end
  if InitMsgCount == 0 then
    DataCenter.CacheData:Startup()
  end
  InitMsgCount = InitMsgCount + 1
  self.RequestOtherLoginMsg(t)
  self:AfterInit()
  DataCenter.WorldAllianceCityDataManager:ReSetThroneNuclearScore()
end
local RequestOtherLoginMsg = function(t)
  DataCenter.VIPManager:RequestRewardInfo()
  CommonUtil.ProtectCall(function()
    if CS.SDKManager.IS_UNITY_ANDROID() or CS.SDKManager.IS_UNITY_IOS() then
      local isNotifyOpen = CS.GameEntry.Sdk:GetIsNotifyOpen()
      SFSNetwork.SendMessage(MsgDefines.ClientNotifySetting, isNotifyOpen)
    end
  end)
  if t.alliance ~= nil then
    SFSNetwork.SendMessage(MsgDefines.GetAllianceAutoJoinRallyInfo)
  else
    SFSNetwork.SendMessage(MsgDefines.LoginOther, "alliance")
  end
  local condition = DataCenter.LWVipPayDataManager:GetData().arPay
  if condition <= LuaEntry.Player.payDollerTotal then
    SFSNetwork.SendMessage(MsgDefines.AIHelpMessage)
  end
  SFSNetwork.SendMessage(MsgDefines.GetBindMailReward)
  CommonUtil.ProtectCall(function()
    DataCenter.ActivityListDataManager:RequestActivityData()
  end)
  GiftPackageData.InitPackageReq()
  DataCenter.CumulativeRechargeManager:RequestDat()
  DataCenter.AllianceAlertDataManager:InitData()
  DataCenter.WorldFavoDataManager:InitData()
  DataCenter.AllianceLogManager:InitData()
  DataCenter.RadarCenterDataManager:InitData(t)
  SFSNetwork.SendMessage(MsgDefines.GetPlayerLevelRewardInfoMessage)
  DataCenter.WorldTrendManager:InitData()
  DataCenter.QNManager:InitData()
  DataCenter.GovernmentManager:InitData(t)
  DataCenter.LWNewsCenterManager:InitData()
  DataCenter.LWPVPArenaManager:InitData()
  DataCenter.ZoneWarManager:InitData()
  DataCenter.HeroMonthCardManager:Startup()
  DataCenter.CommonShopManager:InitAll()
  DataCenter.WeekCardManager:InitData()
  DataCenter.AllianceAutoInviteManager:GetInviteInfoReq()
  DataCenter.WorldNoticeManager:InitData()
  DataCenter.ActDispatchTaskDataManager:GetAllSingleTasksFromServer(true)
  DataCenter.LWAllyStationDataManager:InitData()
  DataCenter.WorldMarchDataManager:WorldGetMarchInfos()
  SFSNetwork.SendMessage(MsgDefines.UserGetServerEffect)
  DataCenter.WorldAllianceCityDataManager:InitAllCityDataRequest()
  SFSNetwork.SendMessage(MsgDefines.PlayerMonthPayInfo)
  SFSNetwork.SendMessage(MsgDefines.GetMineCavePlunderLog)
  SFSNetwork.SendMessage(MsgDefines.GetHeroBountyInfo)
  SFSNetwork.SendMessage(MsgDefines.UserTitleGetList)
  DataCenter.ChampionDuelManager:SendActInfo(true)
  DataCenter.AllianceRedPacketManager:RequestRedPacket()
  DataCenter.AllianceDeclareWarManager:InitSend()
  DataCenter.SeasonFactionWarDataManager:InitData()
  DataCenter.WorldNewsDataManager:SendRequest()
  DataCenter.AllianceTaskManager:RequestTaskInfo()
  SFSNetwork.SendMessage(MsgDefines.AlApplyList, 1)
  SFSNetwork.SendMessage(MsgDefines.GetCityBrokenInfo)
  DataCenter.DailyMustBuyManager:RequestClaimedReward()
  DataCenter.DailyPackageManager:CheckNeedRequest()
  DataCenter.PlayerInfoDataManager:RequestRemarkNameList(1)
  if t.temperature_help then
    DataCenter.TemperatureManager:SetSendCoalTimes(t.temperature_help)
  end
  SFSNetwork.SendMessage(MsgDefines.ActivityGoodsExchangeList)
  SFSNetwork.SendMessage(MsgDefines.LwSeasonResRqInfo)
  SFSNetwork.SendMessage(MsgDefines.AllianceShowHelp)
  DataCenter.DigTreasureManager:RequestData()
  if LuaEntry.Player:GetUserSetting(UserSettingKey.DIAMOND_USAGE_REMINDER) == nil then
    local isOn = Setting:GetBool(SettingKeys.SHOW_USE_DIAMOND_ALERT, true)
    local setValue = isOn and "1" or "0"
    SFSNetwork.SendMessage(MsgDefines.UserSetting, UserSettingKey.DIAMOND_USAGE_REMINDER, setValue)
  end
  if LuaEntry.Player:GetUserSetting(UserSettingKey.FINISH_BUILDING_RECEIVE_REMINDER) == nil then
    local isOn = Setting:GetBool(SettingKeys.BUILDING_FINISHED_REMIND, false)
    local setValue = isOn and "1" or "0"
    SFSNetwork.SendMessage(MsgDefines.UserSetting, UserSettingKey.FINISH_BUILDING_RECEIVE_REMINDER, setValue)
  end
end
local AfterInit = function()
  CommonUtil.ProtectCall(function()
    if Config.IsPC() or WelfareController.CanOpenGoldBrickStore() then
      SFSNetwork.SendMessage(MsgDefines.GetGoldBrickInfo)
    end
  end)
  CS.GameEntry.Sdk:SendDataToNative("Pay_queryPurchase", "")
  SFSNetwork.SendMessage(MsgDefines.RequestTWSkillChipData)
  SFSNetwork.SendMessage(MsgDefines.BiuBiuPVPInfo)
  CommonUtil.ProtectCall(function()
    if (CS.SceneManager.CurrSceneID == SceneManagerSceneID.World or LuaEntry.Player.level > 3) and LuaEntry.Player.world_main_pos < 0 then
      SFSNetwork.SendMessage(MsgDefines.MoveCityToWorld)
    end
  end)
  CommonUtil.ProtectCall(function()
    UIUtil.CheckIsArabicTMPFix()
    UIUtil.CheckIsUploadImageFix()
  end)
  InteractiveUtil.Clean()
  DataCenter.CitySkinSkillManager.SetDataDirty()
  EventManager:GetInstance():Broadcast(EventId.OnFinishHandleInitMsg)
end
local OnLiteReconnect = function(self)
  DataCenter.MailDataManager:OnLiteReconnect()
  if SeasonUtil.IsInSeasonSnowMode() then
    DataCenter.TemperatureManager:OnLiteReconnect()
  end
end
InitMessage.OnCreate = OnCreate
InitMessage.HandleMessage = HandleMessage
InitMessage.RequestOtherLoginMsg = RequestOtherLoginMsg
InitMessage.AfterInit = AfterInit
InitMessage.OnLiteReconnect = OnLiteReconnect
return InitMessage
