anchor.diff:  	   (,v (v! ,x ,y, z)))
          (if ,in-place
   	   (setf (translation ,tthis) ,v)
  -	   (translate ,tthis ,v)))))
  +	   (translate ,tthis ,v))
  +       ,tthis)))
   
   (defmethod scale ((this node) size &key (modify t))
     "Scales a node. Takes a vector3."
  
positive.code:   (setf (slot-value this 'r-matrix) nil)
    (setf (slot-value this 's-matrix) nil)
    (setf (slot-value this 's-matrix) nil)
    (setf (slot-value this 'transform) nil))
  
  (defmethod reset-translation ((this node))
    (setf (slot-value this 't-matrix) nil
  	(translation this) v0))
  
  (defmethod reset-rotation ((this node))
    (setf (slot-value this 'r-matrix) nil
  	(rotation this) (q:identity)))
  
  (defmethod reset-scaling ((this node))
    (setf (slot-value this 's-matrix) nil
  	(scaling this) vi))
  
  
  (defmethod print-object ((this node) s)
  
negative.code:       (setf (scaling this) 
  	    (v:* size (scaling this)))
        (v:* size (scaling this))))
      
  
  (defmacro !s (this x y z &optional in-place)
    (let ((tthis (gensym))
  