anchor.diff:      then
       begin
         // uvolneni prvniho useku v posunove ceste je signalem pro zhasnuti navestidla
  -      if ((signal.signal <> ncStuj) and (Self.typ = TJCType.shunt)) then
  +      if ((signal.targetSignal <> ncStuj) and (Self.typ = TJCType.shunt)) then
         begin
           Self.Log('Uvolnen usek ' + track.name + ' : navestidlo ' + signal.name + ' nastaveno na STUJ');
           signal.JCCancelSignal();
  
positive.code:     Self.Log('Ruseni: rozpad cesty vlakem');
      if (signal.DNjc = Self) then
      begin
        if (signal.signal > ncStuj) then
        // tato situace opravdu muze nastat - predstavte si posunovou cestu s jednim usekem vychazejici z nedetek koleje
          signal.JCCancelSignal();
        signal.DNjc := nil;
  
negative.code:         // (behem staveni mohla nastat zmena)
          if (Self.IsCriticalBarrier()) then
          begin
            if (signal.targetSignal > ncStuj) then
              signal.signal := ncStuj;
            // Send to all areas because DN could be from any source (last track freed etc.)
            Self.signal.BottomErrorBroadcast('Podmínky pro '+Self.name+' nesplněny!', 'TECHNOLOGIE');
  