anchor.diff:        participants))
   
   (defmethod conversations ((user user))
  +  "Retrieve the conversations the user has participated in. Note that this only works for the logged in user."
     (flet ((make-conversation (node)
  -           (format T "~a" ($ node (serialize)))
              (make-instance 'conversation
                             :id (let ((id ($ node "h3.title a" (first) (attr :href) (node))))
  -                                (subseq id (1+ (search "/" id)) (1- (search "/" id :from-end T))))
  +                                (subseq id (1+ (search "/" id)) (search "/" id :from-end T)))
                             :op ($ node (attr :data-author) (node))
                             :time (let ((datetime ($ node ".posterDate .DateTime" (attr :data-time) (node))))
                                     (if (> (length datetime) 0)
  
positive.code:        (each #'make-conversation :replace T))))
  
  (defmethod start-conversation ((user user) participants title message)
    ($ (initialize (token-request "/conversations/insert"
                                  `(("recipients" . ,(to-participants participants))
                                    ("title" . ,title)
  
negative.code: (in-package :org.tymoonnext.ed-bot.xencl)
  
  (defclass conversation (meta-thread)
    ()
    (:documentation "Object for interacting with user conversations."))
  
  (defclass conversation-post (meta-post)
    ()
    (:documentation "A post in a private conversation thread."))
  
  (defmethod print-object ((conversation conversation) out)
    (print-unreadable-object (conversation out :type T)
  