private void Deserialize(JSON_SkillAbilityDeriveParam json)
 {
     this.iname = json.iname;
     ESkillAbilityDeriveConds[] array1 = ((IEnumerable <ESkillAbilityDeriveConds>) new ESkillAbilityDeriveConds[3]
     {
         (ESkillAbilityDeriveConds)json.trig_type_1,
         (ESkillAbilityDeriveConds)json.trig_type_2,
         (ESkillAbilityDeriveConds)json.trig_type_3
     }).Where <ESkillAbilityDeriveConds>((Func <ESkillAbilityDeriveConds, bool>)(trig_type => trig_type != ESkillAbilityDeriveConds.Unknown)).ToArray <ESkillAbilityDeriveConds>();
     string[] array2 = ((IEnumerable <string>) new string[3]
     {
         json.trig_iname_1,
         json.trig_iname_2,
         json.trig_iname_3
     }).Where <string>((Func <string, bool>)(trig_iname => !string.IsNullOrEmpty(trig_iname))).ToArray <string>();
     this.deriveTriggers = new SkillAbilityDeriveTriggerParam[array2.Length];
     for (int index = 0; index < array2.Length; ++index)
     {
         this.deriveTriggers[index] = new SkillAbilityDeriveTriggerParam(array1[index], array2[index]);
     }
     if (json.base_abils != null)
     {
         this.base_abils = new string[json.base_abils.Length];
         for (int index = 0; index < this.base_abils.Length; ++index)
         {
             this.base_abils[index] = json.base_abils[index];
         }
     }
     if (json.derive_abils != null)
     {
         this.derive_abils = new string[json.derive_abils.Length];
         for (int index = 0; index < this.derive_abils.Length; ++index)
         {
             this.derive_abils[index] = json.derive_abils[index];
         }
     }
     if (json.base_skills != null)
     {
         this.base_skills = new string[json.base_skills.Length];
         for (int index = 0; index < this.base_skills.Length; ++index)
         {
             this.base_skills[index] = json.base_skills[index];
         }
     }
     if (json.base_skills == null)
     {
         return;
     }
     this.derive_skills = new string[json.derive_skills.Length];
     for (int index = 0; index < this.derive_skills.Length; ++index)
     {
         this.derive_skills[index] = json.derive_skills[index];
     }
 }
 public void Deserialize(JSON_SkillAbilityDeriveParam json, MasterParam masterParam)
 {
     this.Deserialize(json);
     this.FindSkillAbilityDeriveParams(masterParam);
 }