anchor.diff:     Blk.LoadData(ini_tech, str[i], ini_rel, ini_stat);
      Blk.OnChange := Self.BlkChange;
   
  -   // najdeme spravne misto pro novy bloky
  -   index := 0;
  -   while ((index < Self.data.Count) and (Self.data[index].GetGlobalSettings().id < Blk.GetGlobalSettings().id)) do Inc(index);
  -
  -   Self.data.Insert(index, Blk);
  +   Self.data.Insert(Self.FindPlaceForNewBlk(Blk.GetGlobalSettings().id), Blk);
     end;//for i
   
    FreeAndNil(ini_tech);
  
positive.code: 
  ////////////////////////////////////////////////////////////////////////////////
  
  end.//unit
  
negative.code: //load all blocks from file
  function TBlky.LoadFromFile(const tech_filename,rel_filename,stat_filename:string):Integer;
  var ini_tech,ini_rel,ini_stat:TMemIniFile;
      i:Integer;
      Blk:TBlk;
      str:TStrings;
  begin
  