anchor.diff:  
            // v trati zaver nerusime, nesmime tam dat ani nouzovy, ani zadny zaver
            if ((i <> Self.fproperties.Useky.Count-1) or (Self.fproperties.Trat = -1)) then
  -           (Usek as TBlkUsek).Zaver := TZaver.nouz;
  +           Usek.Zaver := TZaver.nouz;
           end;
         end;
       end;
   
   
      // kontrola zruseni jizdni cesty vlivem vynuzovani bloku
  -   if ((i = Self.RozpadBlok) and (((Usek as TBlkUsek).Zaver = TZaver.no))) then
  +   if ((i = Self.RozpadBlok) and ((Usek.Zaver = TZaver.no))) then
       begin
        // pokud usek, na ktery se chystam vkrocit, nema zaver, je neco divne -> zrusit JC (predevsim kvuli predavani loko, ktere by mohlo narusit dalsi JC)
        Self.RusJCWithoutBlk();
  
positive.code:     // pozor ale na JC, ktere maji jen jeden usek a ten je stanicni koleji:
      if (Self.fproperties.Useky.Count = 1) then
       begin
        Blky.GetBlkByID(Self.fproperties.Useky[0], Usek);
        (Usek as TBlkUsek).Zaver := no;
  
        Blky.GetBlkByID(Self.fproperties.NavestidloBlok, Nav);
        Usek := (Nav as TBlkSCom).UsekPred;
        spri := Self.GetSoupravaIndex(Nav, Usek);
  
        // pokud ma cesta jen jeden usek, odstranime soupravu z useku pred navestidlem:
        if ((Self.fproperties.TypCesty = TJCType.vlak) and (spri > -1)) then
         begin
          (Usek as TBlkUsek).RemoveSouprava(spri);
          writelog('JC '+Self.nazev+': smazana souprava '+Soupravy.GetSprNameByIndex(spri)+
            ' z bloku '+Usek.name, WR_SPRPREDAT, 0);
         end;
  
negative.code: //RozpadBlok = blok index, kam by mela souprava vjet
  //RozpadRuseniBlok = blok index, kde je posledni detekovany vagon soupravy
  procedure TJC.UsekyRusJC();
  var Nav:TBlkSCom;
      Blk:TBlk;
      Usek,DalsiUsek:TBlkUsek;
      i, spri:Integer;
  begin
   Blky.GetBlkByID(Self.fproperties.NavestidloBlok, TBlk(Nav));
  
   // kontrola obsazenosti useku pred navestidlem
   Usek := Nav.UsekPred as TBlkUsek;
   if ((Self.RozpadBlok = -1) and ((Usek.Obsazeno = TUsekStav.obsazeno) or
       (Usek.GetSettings.RCSAddrs.Count = 0))) then
    begin
     Self.RozpadBlok       := 0;
     Self.RozpadRuseniBlok := -1;
    end;
  
   // uvolneni prvniho useku pred navestidlem v posunove ceste je signalem pro zhasnuti navestidla
   if ((Usek.GetSettings().RCSAddrs.Count > 0) and (Usek.Obsazeno = TUsekStav.uvolneno) and
       (Nav.Navest <> 0) and (Self.RozpadRuseniBlok = -1) and (Self.data.TypCesty = TJCType.posun) and
       (Self.RozpadBlok >= 1)) then
    begin
     writelog('JC '+Self.Nazev+': Uvolnen usek '+Usek.name+' : navestidlo '+
       Nav.name+' nastaveno na STUJ',WR_VC);
     Nav.JCZrusNavest();
    end;
  
  
  