anchor.diff:       ok.callback(Self, ok.data);
      Exit();
     end;
  - if (Self.stolen) then
  + if ((Self.stolen) and (not Self.acquiring)) then
     begin
      writelog('LOKO ' + Self.nazev + ' ukradena, nenastavuji funkce', WR_MESSAGE);
      if (Assigned(err.callback)) then
  
positive.code:     stepsOld:Byte;
      cbOk, cbErr: PTCB;
  begin
   if ((Self.direction = direction) and (Self.speedStep = speedStep)) then
    begin
     if (Assigned(ok.callback)) then
       ok.callback(Self, ok.data);
     Exit();
    end;
   if (Self.stolen) then
    begin
     writelog('LOKO '+Self.nazev+' ukradena, nenastavuji rychlost', WR_MESSAGE);
     if (Assigned(err.callback)) then
  
negative.code: 
  procedure THV.TrakceAcquired(Sender: TObject; LocoInfo: TTrkLocoInfo);
  var direction:Boolean;
      speedStep:Integer;
  begin
   Self.slot := LocoInfo;
   Self.changed := true;
  