anchor.diff:  
   (define-player-handler (play/move) ((table :table) (thing :placeable) (x :int) (y :int) (z :int) (rot :int))
     (set-props thing x y z rot)
  +  (when (typep thing 'note) (setf (attached-to thing) nil))
     (publish! table :moved  `((thing . ,(id thing)) (x . ,x) (y . ,y) (z . ,z) (rot . ,rot)))
     :ok)
   
  
positive.code:   (publish! table :flipped-coin `((result . ,(pick (list :heads :tails)))))
    :ok)
  
  (define-player-handler (play/mini) ((table :table) (mini-uri :string) (x :int) (y :int) (z :int) (rot :int))
    (let ((mini (make-instance 'mini :belongs-to (id (session-value :player)))))
      (set-props mini mini-uri x y z rot)
      (insert! table mini)
      (publish! table :placed-mini `((mini . ,(redact mini))))
      :ok))
  
  (define-player-handler (play/remove) ((table :table) (thing :placeable))
    (delete! table thing)
    (publish! table :removed `((thing . ,(id thing))))
  
negative.code:   (publish! table :loaded `((things . ,(length (getj :things file)))))
    :ok)
  
  (define-player-handler (table/tablecloth) ((table :table) (tablecloth-uri :string :max 255))
    (setf (tablecloth table) tablecloth-uri)
    (publish! table :tablecloth `((tablecloth . ,tablecloth-uri)))
    :ok)
  