anchor.diff:        )"
        (user-id thread-id))))
   
  -(defun follow-thread-as-anonymous (thread-id user-ip)
  +(defun anonymous-follow-thread (thread-id user-ip)
     (unless (ip-following-thread-p thread-id user-ip)
       (execute-query-modify
        "INSERT INTO following (
  
positive.code:                                             num-of-pages)
                                num-of-pages))))))))))
  
  ;;; FIXME: i have no idea how password encryption works so i just copied this
  ;;;        from somewhere, probably needs improved
  (defconstant +hash-size+ 32)
  
negative.code: 
  (defun follow-thread (thread-id user-id user-ip)
    (if (logged-in-p)
        (user-follow-thread thread-id user-id)
        (anonymous-follow-thread thread-id user-ip)))
  
  (defun user-follow-thread (thread-id user-id)
    (unless (user-following-thread-p thread-id user-id)
      (execute-query-modify
       "INSERT INTO following (
  