anchor.diff:      S.Write(MissionMode, SizeOf(TKMissionMode));
       S.Write(LocCount);
       S.Write(CanBeHuman, SizeOf(CanBeHuman));
  +
  +    fTxtInfo.Save(S);
  +
       for CSP := Low(TKMCustomScriptParam) to High(TKMCustomScriptParam) do
         S.Write(fCustomScriptParams[CSP], SizeOf(fCustomScriptParams[CSP]));
  -
  -    fTxtInfo.Save(S);
   
       //Try to save map cache up to 3 times (in case its updating by other thread
       //its much easier and working well, then synchronize threads
  
positive.code:   S.Read(MissionMode, SizeOf(TKMissionMode));
    S.Read(LocCount);
    S.Read(CanBeHuman, SizeOf(CanBeHuman));
    for CSP := Low(TKMCustomScriptParam) to High(TKMCustomScriptParam) do
      S.Read(fCustomScriptParams[CSP], SizeOf(fCustomScriptParams[CSP]));
  
    fTxtInfo.Load(S);
  
    IsFavourite := gGameApp.GameSettings.FavouriteMaps.Contains(fCRC);
  end;
  
  
  
negative.code: 
  destructor TKMapInfo.Destroy;
  begin
    FreeAndNil(fTxtInfo);
  
    inherited;
  end;
  