anchor.diff:      procedure RemDemand(aUnit:TKMUnit); overload;
   
       function GetAvailableDeliveriesCount:Integer;
  -    procedure AssignDelivery(iO,iD:Integer; KMSerf:TKMUnitSerf);
  -    procedure AskForDelivery(KMSerf: TKMUnitSerf; KMHouse: TKMHouse=nil);
  +    procedure AssignDelivery(iO,iD:Integer; aSerf:TKMUnitSerf);
  +    procedure AskForDelivery(aSerf: TKMUnitSerf; aHouse: TKMHouse=nil);
       procedure TakenOffer(aID:integer);
       procedure GaveDemand(aID:integer);
       procedure AbandonDelivery(aID:integer); //Occurs when unit is killed or something alike happens
  
positive.code: 
  //Should issue a job based on requesters location and job importance
  //Serf may ask for a job from within a house after completing previous delivery
  procedure TKMDeliverQueue.AskForDelivery(KMSerf: TKMUnitSerf; KMHouse: TKMHouse=nil);
  var
    iD, iO, FoundD, FoundO: Integer;
    Bid, BestBid: Single;
  
negative.code: end;
  
  
  function TKMDeliverQueue.CalculateBid(iO,iD:Integer; aSerf: TKMUnitSerf):Single;
  begin
    //Basic Bid is length of route
    if fDemand[iD].Loc_House<>nil then
  