anchor.diff:  end;
   
   
  -constructor TTaskDeliver.Load(LoadStream:TKMemoryStream);
  +constructor TTaskDeliver.Load(LoadStream: TKMemoryStream);
   begin
     inherited;
     LoadStream.Read(fFrom, 4);
  
positive.code:     else Result := TaskDone;
    end;
  
    inc(fPhase);
  end;
  
  
  procedure TTaskDeliver.Save(SaveStream:TKMemoryStream);
  begin
    inherited;
    if fFrom <> nil then
  
negative.code: 
  
  { TTaskDeliver }
  constructor TTaskDeliver.Create(aSerf: TKMUnitSerf; aFrom: TKMHouse; toHouse: TKMHouse; Res: TResourceType; aID: Integer);
  begin
    inherited Create(aSerf);
    fTaskName := utn_Deliver;
  
    Assert((aFrom <> nil) and (toHouse <> nil) and (Res <> rt_None), 'Serf ' + IntToStr(fUnit.ID) + ': invalid delivery task');
  
    if WRITE_DELIVERY_LOG then
      fLog.AddTime('Serf ' + IntToStr(fUnit.ID) + ' created delivery task ' + IntToStr(fDeliverID));
  
    fFrom    := aFrom.GetHousePointer;
    fToHouse := toHouse.GetHousePointer;
  