anchor.diff:  (in-package :tmsmt)
   
   (defparameter *table-dim* (vec3* .4 .4 .01))
  -(defparameter *box-dim* .045)
  -(defparameter *resolution* .05)
  +(defparameter *box-dim* .050)
  +(defparameter *resolution* .08)
   (defparameter *z* (/ (+ .02 (vec-z *table-dim*) *box-dim*)
                        2))
   (defparameter *box* (scene-box (vec3* *box-dim* *box-dim* *box-dim*)))
  
positive.code:         unless (and (zerop (vec-x v))
                      (zerop (vec-y v)))
          do
            (incf i)
          ;; plan
            (setq *plan*
                  (itmp-rec (scene-graph *sg-table* blocks) *sg-goal*
                            (rope *tmsmt-root* "pddl/itmp/itmp-blocks-linear.pddl")
                            :encoding :linear
                            :action-encoding :enum
                            :max-steps 3 :resolution *resolution*))
          ;;(print *plan*)
          ;; write output
            (output-timing n-obj "idtmp")))
  
  ;; (render-group-itmp *plan-context* *group*
  ;;                    *plan*
  
negative.code:                           (vec3* 2 2 2)
                            )
  
  (defparameter *tf-grasp-top* (tf* (y-angle (* 1 pi)) (vec3* .00 .00 (+ .04 (/ *box-dim* 2)))))
  (defparameter *tf-grasp-back* (tf* (y-angle (* .5 pi)) (vec3* (- (+ .04 (/ *box-dim* 2)))  .00 .070)))
  (defparameter *tf-grasp-rel* *tf-grasp-back*)
  
  (defvar *plan*)
  
  (loop for n-obj from 6 to 6
     for i = 0
     do
       (loop
  