anchor.diff:                                     :left (+ x (lisp *unit-string*))
                                      :key (unique-id)))))
   
  -       (def-component
  -           mini-opinion
  +       (def-component mini-opinion
              (let ((vv (prop opinion votevalue)))
                (psx
                 (:div
                  :class "opinion"
  +               :on-click (@ this handle-click)
                  :style (create position :absolute top (prop top) left (prop left)
                                 background :tan)
                  (:b (case vv
                        (-1 "-") (0 "o") (1 "+")))
  -               (:flag-display :flag (prop opinion flag))))))
  +               (:flag-display :flag (prop opinion flag)))))
  +         handle-click
  +         (lambda (e)
  +           (funcall (prop :focus-func)
  +                    (chain (prop tree-address)
  +                           (concat (list (prop opinion id)))))
  +           (chain e (stop-propagation))))
   
          (def-component opinion
              (let ((op (@ (prop opinions) 0)))
                (psx
                 (:div
  +               :on-click (@ this handle-click)
                  :class "opinion"
                  :key (unique-id)
                  :style (create position :absolute
  
positive.code:          get-initial-state
           (lambda () (create viewable false))
           handle-click
           (lambda (e) (unless (prop not-viewable)
                         (set-state viewable (not (state viewable)))
                         (chain e (stop-propagation)))))
  
  
negative.code:              (psx
                (:span :style (create font-weight :bold position :relative)
                       :class (if focussed "parent-active" "parent-inactive")
                       :key (unique-id)
                       (rebreak (prop text))
                       (when (and focussed
                                  (eql (prop last-char-pos)
  