anchor.diff:      glob := Blk.GetGlobalSettings();
   
       // zaver
  +
  +    // zaver
       if ((Blk as TBlkUsek).Zaver <> TZaver.no) then
  -      bariery.Add(Self.JCBariera(_JCB_USEK_ZAVER, Blk, Blk.GetGlobalSettings.id));
  +     begin
  +      if ((Blk as TBlkUsek).Zaver = TZaver.ab) then
  +        bariery.Add(Self.JCBariera(_JCB_USEK_AB, Blk, Blk.GetGlobalSettings.id))
  +      else
  +        bariery.Add(Self.JCBariera(_JCB_USEK_ZAVER, Blk, Blk.GetGlobalSettings.id));
  +     end;
   
       // vyluka
       if ((Blk as TBlkUsek).Vyluka <> '') then
  
positive.code:       if ((Blk as TBlkVyhybka).Poloha <> Self.fproperties.Odvraty[i].Poloha) then
         begin
          if ((Blk2 as TBlkVyhybka).Zaver > TZaver.no) then
            bariery.Add(Self.JCBariera(_JCB_USEK_ZAVER, Blk2, Blk2.GetGlobalSettings.id));
  
          if ((Blk2 as TBlkVyhybka).vyhZaver) then
            bariery.Add(Self.JCBariera(_JCB_VYHYBKA_NOUZ_ZAVER, Blk2, Blk2.GetGlobalSettings.id));
  
negative.code: 
   case (Bariera.typ) of
    _JCB_BLOK_DISABLED, _JCB_BLOK_NOT_TYP, _JCB_SCOM_NOT_USEK, _JCB_BLOK_NOT_EXIST,
    _JCB_USEK_OBSAZENO, _JCB_USEK_ZAVER, _JCB_USEK_AB, _JCB_USEK_SOUPRAVA,
    _JCB_VYHYBKA_KONC_POLOHA, _JCB_VYHYBKA_ZAMCENA, _JCB_VYHYBKA_NOUZ_ZAVER,
    _JCB_PREJEZD_NOUZOVE_OTEVREN, _JCB_PREJEZD_PORUCHA,
    _JCB_ODVRAT_ZAMCENA, _JCB_ODVRAT_OBSAZENA, _JCB_ODVRAT_KONC_POLOHA,
  