anchor.diff:  (defparameter *refuel-counter* 0)
   (defparameter *move-counter* 0)
   
  -(defun refuel-and-nav (loc)
  +(defun* refuel-and-nav (loc)
     "refuel-and-navigate LOC 
   Navigate to location LOC.  Repeatedly choose among the N, E, S and W actions until the robot
   reaches LOC."
  
positive.code: (def-env-accessor env ws-env
      "The environemnt for a state")
  
  (defun nav (loc)
    "nav LOC 
  Navigate to location LOC.  Repeatedly choose among the N, E, S, W, and REFUEL actions until the
  robot reaches LOC."
  
negative.code:           (let ((next-loc (second (grid-world:shortest-path (env) (robot-loc) loc))))
              (action navigate-move (direction-from-to (robot-loc) next-loc)))))))
  
  (defun* pickup-waste ()
    "pickup-waste
  Navigate to the location of the waste and pick it up."
    (call navigate-to-waste (refuel-and-nav (waste-source)))
    (action pickup-action 'pickup))
  
  (defun* drop-waste ()
    "drop-waste
  Navigate to the dropoff location and drop off the waste."
    (call navigate-to-dropoff (refuel-and-nav (waste-target)))
    (action drop-action 'drop))
  
  (defun* waste-robot-prog ()
    "waste-robot-prog
  Repeadedly pick up waste and drop it off."
    (loop
  