public ShadowPokemonData(GCGameSave gameSave, byte[] data, GCSaveData parent)
     : base(gameSave, data, parent)
 {
     this.raw = data;
     this.shadowInfoMap = new Dictionary<uint, XDShadowPokemonInfo>();
     this.shadowInfo = new XDShadowPokemonInfo[data.Length / 72];
     for (int i = 0; i < shadowInfo.Length; i++) {
         shadowInfo[i] = new XDShadowPokemonInfo(ByteHelper.SubByteArray(i * 72, data, 72));
         if (!this.shadowInfoMap.ContainsKey(shadowInfo[i].Personality))
             this.shadowInfoMap.Add(shadowInfo[i].Personality, shadowInfo[i]);
     }
 }
 public ShadowPokemonData(GCGameSave gameSave, byte[] data, GCSaveData parent)
     : base(gameSave, data, parent)
 {
     this.raw           = data;
     this.shadowInfoMap = new Dictionary <uint, XDShadowPokemonInfo>();
     this.shadowInfo    = new XDShadowPokemonInfo[data.Length / 72];
     for (int i = 0; i < shadowInfo.Length; i++)
     {
         shadowInfo[i] = new XDShadowPokemonInfo(ByteHelper.SubByteArray(i * 72, data, 72));
         if (!this.shadowInfoMap.ContainsKey(shadowInfo[i].Personality))
         {
             this.shadowInfoMap.Add(shadowInfo[i].Personality, shadowInfo[i]);
         }
     }
 }