anchor.diff:  (defvar *ping-semaphore* (sb-thread:make-semaphore))
   (defparameter *irc-read-loop* nil)
   (defvar *tg-message-sender*)
  +
  +(defun time-str ()
  +  (multiple-value-bind
  +        (ss mm hh d m)
  +      (get-decoded-time)
  +    (format nil "[~A-~A ~2,'0D:~2,'0D:~2,'0D]"
  +            m d hh mm ss)))
  +
  +(defvar *log-out* *stdout*)
  +(defun logging (msg &rest args)
  +  (apply #'format
  +         (append
  +          (list *log-out*
  +                (concatenate 'string
  +                             (time-str) " " msg "~%"))
  +          args)))
   
   (defun exit ()
     (sb-ext:exit))
  
positive.code:   (tryto (quit *irc-connection*))
    (tryto (sb-thread:terminate-thread *irc-read-loop*))
    (sleep 5)
    (format *stdout* "Connecting to IRC~%")
    (setf *irc-connection*
          (connect :nickname "MidyMidyTGBot"
                   :server "irc.freenode.net"))
    (format *stdout* "JOIN CHANNEL~%")
    (join *irc-connection* *irc-channel*)
    (format *stdout* "ADD HOOKS~%")
    (add-hook *irc-connection*
              'irc::irc-privmsg-message
              #'irc-message-hook)
  
negative.code:             (setf (cdr *irc-message-pool-head*)
                    (cddr *irc-message-pool-head*))
              (clear-msg-pool-f))
          (condition ()
            (logging "clear-msg-pool-f: Cannot send message!")))))
  
  (defun irc-shutdown ()
    (tryto
  