public override void PopulateFromJson(JObject jsonObject)
        {
            this.PopulateFromJson(jsonObject);
            JArray val = Serialization.JsonArray(jsonObject, "gods");

            m_gods = new List <GodAvailability>((val != null) ? val.get_Count() : 0);
            if (val != null)
            {
                foreach (JToken item in val)
                {
                    m_gods.Add(GodAvailability.FromJsonToken(item));
                }
            }
            JArray val2 = Serialization.JsonArray(jsonObject, "fights");

            m_fights = new List <FightAvailability>((val2 != null) ? val2.get_Count() : 0);
            if (val2 != null)
            {
                foreach (JToken item2 in val2)
                {
                    m_fights.Add(FightAvailability.FromJsonToken(item2));
                }
            }
            JArray val3 = Serialization.JsonArray(jsonObject, "squads");

            m_squads = new List <SquadAvailability>((val3 != null) ? val3.get_Count() : 0);
            if (val3 != null)
            {
                foreach (JToken item3 in val3)
                {
                    m_squads.Add(SquadAvailability.FromJsonToken(item3));
                }
            }
            JArray val4 = Serialization.JsonArray(jsonObject, "companions");

            m_companions = new List <CompanionAvailability>((val4 != null) ? val4.get_Count() : 0);
            if (val4 != null)
            {
                foreach (JToken item4 in val4)
                {
                    m_companions.Add(CompanionAvailability.FromJsonToken(item4));
                }
            }
        }